Spring Web Flow 2.0 M4 釋出
尊敬的 Spring 社群:
我們很高興地宣佈 Spring Web Flow 2.0 M4 現已釋出。 下載 | 文件
此版本鞏固了 Web Flow 2 的架構模型,包括 SWF 2 如何與 Spring MVC、JavaServerFaces 和 Ajax 整合。它還引入了許多新功能和改進,包括
2.0 M4 新特性
- 引入了簡化的 XML 流定義語法。 有關新語法的示例,請參閱 Spring Travel 參考應用程式。
- 使用版本 2 語法可將版本 1 流定義的大小減少最多 50%。例如,Spring Travel 1.0.5 由六個工件中大約 200 行的 flow-application 程式碼組成。最新的 2.0 M4 版本由兩個工件中 93 行程式碼組成,減少了 50%,並減少了四個需要維護的檔案。
- 節省的主要原因是更強大的表示式語言 (EL) 整合以及用於操作執行和資料對映的更簡單的標籤。
- Spring Security 整合。提供對保護流、狀態和轉換的完全支援。
新的“currentUser”EL 變數可以輕鬆地從流定義或檢視模板中引用經過身份驗證的 Principal。
- Spring MVC 中對流異常處理的靈活支援,包括對自動重新啟動已結束或已過期流的預設支援。
- 支援處理不更改當前頁面的 Ajax 事件。 新的“render”元素允許您在處理 Ajax 事件後選擇性地重新呈現頁面的片段。
- 檢視變數。 檢視變數在其包含的 view-state 進入時分配,並在狀態退出時超出範圍。這些變數提供頁面上下文,對於透過同一頁面的一系列 Ajax 請求更新模型特別有用。
- @Autowired 流變數。流變數現在可以透過 Spring 進行 @Autowired 依賴注入,使它們能夠儲存對 Spring 管理的 @Services 的引用。在變數反序列化後,服務引用會在請求之間自動重新連線。
- 支援彈出視窗。使用 popup=true 標記一個 view-state,當客戶端上啟用 Javascript 時,它將以模態彈出對話方塊呈現。
- 從 Web Flow 的 JSF 支援中分解出一個名為“Spring Javascript”的 Javascript 抽象層。目前,提供了基於 Dojo 和 Ext 的該層的實現。Spring.js 提供
- 一個通用的 Ajax 介面,無論底層使用哪個工具包
- 一個面向方面的 API,用於使用行為(包括客戶端驗證行為)裝飾 HTML DOM 節點。
- 一個小的 JSF 元件庫,它在底層使用 Spring.js 以逐步增強使用 JSF 的 Spring Web 應用程式。如果客戶端上沒有 Javascript,此庫會降級。請參閱 Spring Travel 示例進行說明:關閉 Javascript 並將應用程式與啟用 Javascript 時的應用程式進行比較。
- 支援在標準 Spring MVC 環境中呈現 JSF 檢視。這使得 Facelets 模板可以由普通的 Spring MVC 控制器以及 Flows 呈現。
請參閱版本中包含的 Spring Travel 參考應用程式,以實際演示所有這些功能。這些參考專案可以直接作為動態 Web 專案匯入到 Eclipse 中。
1.x 相容性
給現有 Web Flow 使用者的特別說明:即將推出的 2.0 RC1 將提供對版本 2 環境中版本 1 流的支援。這將允許 1.0.x 流與版本 2 流在同一應用程式中並行執行,無需更改。
有關更多資訊,請參閱完整的 Web Flow 2 變更日誌 和 路線圖。我們還鼓勵您訪問我們的支援論壇和 JIRA 系統,向開發團隊提供有關 M4 的反饋。
盡情享用!2.0 最終版即將推出。
Keith Donald
Web Flow 技術主管
SpringSource