領先一步
VMware 提供培訓和認證,助您加速進步。
瞭解更多親愛的Spring社群,
我們非常高興地宣佈 Spring Web Flow (SWF) 1.0 RC1(釋出候選版本 1)已經發布。 下載。
經過一年多的艱苦開發工作、29,000 次下載、500 位論壇使用者的 3,700 篇帖子、一本書,以及無數社群驅動的文章和文章,本次釋出帶來了 Spring Web Flow 的首個 1.0 釋出候選版本。 本版本被認為適合生產使用,它鞏固了 1.0 API,該 API 將在整個 1.x 系列中保持向後相容。
感謝 Spring Web Flow 的早期採用者和支持者,感謝你們對我們產品的支援。 得益於你們的反饋和支援,Spring Web Flow 提供了當今最具創新性和最強大的控制器引擎之一。
Spring Web Flow 團隊預計在 1.0 最終版之前還會發佈一個候選版本。 1.0 RC1 的新特性和值得注意的改進包括...
新特性和值得注意的改進
此支援透過簡單的 NumberGuess 示例應用程式進行說明,其中由流管理的“Game”元件執行遊戲業務邏輯。 該元件本身對 Spring Web Flow API 沒有任何依賴。
為了演示,Game 元件的業務介面可以定義為

與使用者一起執行遊戲的流定義可能如下所示:

最後,邏輯 game 動作識別符號與 Game 實現之間的繫結由 Spring 在 game-beans.xml 中完成。

HigherLowerGame 實現也與 Spring 和 Spring Web Flow API 完全解耦。
增強了對流變數的支援,流啟動時自動建立。 流變數值甚至可以從後端 bean 工廠獲取,從而受益於完整的依賴注入。 變數的確切範圍是可配置的。
一種新的流執行重定向響應型別,用於重定向到唯一的“流執行 URL”。 訪問流執行 URL 會在之前進入的 ViewState 重新整理流,允許從那裡繼續。 只要對話處於活動狀態且繼續點有效,URL 就保持有效。 這允許在不進行頁面快取的情況下完全使用後退、前進、重新整理和新視窗按鈕。
狀態異常處理的改進,方便支援轉換執行狀態異常處理器。 核心轉換元素現在支援一個 on-exception 屬性,該屬性在發生異常時驅動流轉換到新狀態。 例如
... 如果 placeOrder 方法丟擲 AccountException,則將流轉換為 editAccount 狀態。
流屬性對映支援的改進。 每個流現在都可以配置一個 input-mapper 來對映啟動流的呼叫者提供的輸入。 流還可以配置一個 output-mapper 來向終止流的呼叫者公開返回值。 這些增強功能允許流作為頂級流和子流重用而無需更改,因為輸入和輸出屬性在這兩種情況下都一致對映。
支援動態檢視名稱和目標狀態表達式,分別允許方便地在執行時計算 ViewState 的邏輯檢視名稱和轉換的目標狀態。
增強的 JSF 整合。 JSF 整合現在支援邏輯重定向響應型別,包括 FlowExecutionRedirect、ConversationRedirect、FlowRedirect 和 ExternalRedirect。 此外,對 FlowPhaseListener 的增強允許啟動和重新整理流執行,而無需經過正式導航步驟。 1.0 RC2 有望在 Portlet 環境中增加進一步的 JSF 便利性和對 JSF 的官方支援。
附加資源和入門指南
Spring Web Flow 1.0 RC1 進一步完善了參考手冊,提供了 50 頁專注於 SWF 用法的文件。 該手冊可在HTML 和 PDF 格式的線上文件中獲取。
開始使用 Spring Web Flow 的最佳方法之一是檢視和演練示例應用程式。 我們建議從一開始就檢視所有示例,並根據需要補充參考手冊材料。 1.0 RC1 版本附帶了九 (9) 個示例應用程式,每個應用程式都演示了一組不同的產品功能。 這些示例是
1. Phonebook - 演示大多數功能(包括子流)的原始示例。
2. Sellitem - 演示帶有條件轉換、流執行重定向、對話範圍和延續的嚮導。
3. Flowlauncher - 演示啟動和恢復流的所有可能方式。
4. Itemlist - 演示 REST 風格的 URL、到可重新整理對話 URL 的對話重定向和內聯流。
5. Shippingrate - 演示 Spring Web Flow 與 Ajax 技術一起使用(感謝 Steven Devijver)
5. NumberGuess - 演示有狀態 bean
6. Birthdate - 演示 Struts 整合。
7. Fileupload - 演示多部分檔案上傳。
8. Phonebook-Portlet - Portlet 環境中的電話簿示例(注意流定義如何保持不變)
9. Sellitem-JSF - JSF 環境中的銷售商品示例(注意流定義如何保持不變)
要一步構建用於部署的示例應用程式,只需解壓釋出存檔,訪問 projects/build-spring-webflow 目錄並執行 ant dist 目標。 有關釋出存檔內容和示例的更多資訊,請分別參閱 release readme.txt 和 projects/spring-webflow-samples/readme.txt。 所有示例專案現在都是 Spring IDE 專案,可以直接匯入 Eclipse。 請留意 Spring IDE 團隊即將推出的 Spring IDE 圖形 Web Flow 編輯器。
感謝所有讓 Spring Web Flow 發展至今的人——那些使用它並提供反饋使其更強大的人。 享受吧!
此致,
Spring Web Flow 團隊
Keith Donald
Erwin Vervaet
Colin Sampaleanu
Juergen Hoeller
Rob Harrop