Spring Web Flow 2.0 M4 - 請求反饋

工程 | Keith Donald | 2008年3月11日 | ...

Web Flow 團隊一直在努力開發 Web Flow 2。我們剛剛達到了 第四個里程碑,並且最早下週將進入釋出候選狀態。2.0 正式版計劃在本月底釋出。

在 2.0 最終版釋出之前,我們非常希望聽到您的反饋!如果您是一位目前正在使用 Web Flow 1.x 的應用程式開發者,或者正在評估 Web Flow 以便用於您的專案,請 評估 2.0 M4告訴我們您的想法。如果您是一位正在將 Web Flow 引擎整合到您自己的框架中的 Web 框架提供商,我們鼓勵您評估 2.0 M4 中經過改進的鉤子,並與我們聯絡。

在接下來的幾段中,我將為使用 Web Flow 的應用程式開發者和將其整合到自己 Web 框架中的框架開發者提供 2.0 M4 的亮點。

應用程式開發者
首先,迄今為止評估最新 Web Flow 功能集最佳方法是試用分發包中包含的參考應用程式。2.0 M4 中有兩個參考應用程式,都是“Spring Travel”行程預訂應用程式的兩種風味。一種風味展示了 Web Flow 與 Spring MVC 整合並使用 JSP 檢視,另一種則展示了 Web Flow 與 Spring MVC 整合並使用 JSF 檢視。(請參閱:如何部署

2.0 版本的主要主題之一是易用性。Web Flow 2.0 M4 引入了許多新功能,可以簡化流的實現,我們非常希望聽到您對這些功能的反饋。具體來說:

  • 我們引入了一個簡化的 XML 流定義語法。請試用最新的 Spring Travel 參考應用程式來體驗它,或者比較我們示例流的舊版本最新版本。您怎麼看?許多簡化來自於對 EL 的增強使用以及更簡單的執行操作的標籤。例如,除了任何流變數之外,您現在還可以使用 EL 來執行任何 Spring bean 上的任何方法。
  • 我們引入了與 Spring Security 2 的整合。Spring Travel 參考應用程式展示瞭如何使用“secured”元素來保護流。您也可以保護狀態和過渡元素。
  • 2.0 M4 中有幾個新的“富 Web”功能。您可以將一個檢視狀態標記為“popup”,其檢視將在彈出對話方塊中為您渲染(預設情況下為 Dojo popup)。您也可以在過渡塊中使用新的“render”標籤,在處理 Ajax 事件後請求頁面的部分渲染。最後,嘗試在 Spring Travel 應用程式中關閉 Javascript,並注意應用程式如何繼續工作。我們努力構建了對降級支援,這對於那些無法依賴客戶端可用 Javascript 的客戶來說非常重要。
  • 我們顯著縮短了 FlowExecution 鍵的長度。1.x 的鍵格式使流執行 URL 看起來像這樣:https:///booking?_flowExecutionKey=_c1E11178E-485F-3913-98BA-86E17A09FA3D_kE977CB0B-47FE-3319-A688-FE4F4FFFCE2。預設的 2.0 格式為您提供了更簡單的 URL,例如:https:///booking?execution=c1v1,其中第一個數字是您的 conversationId,第二個數字是您的 view(或 continuation)id。URL 格式當然仍然是可配置的。
  • 還有更多值得探索的內容;請參閱釋出公告以獲取其他新功能的描述。
框架開發者
Web Flow 的目標之一始終是“專注於做好一件事[實現流],並使其易於擴充套件”。Web Flow 的核心發揮著提供最完整流引擎的作用。在此角色下,我們鼓勵其他框架提供商在此基礎上進行開發,並告知我們整合是否不像應有的那麼容易。Grails 社群已經在這樣做,已經將 Web Flow 整合到 Grails 中,用於實現 Groovy 中的流(Grails 構建在 Spring MVC 之上,而 Web Flow 是一個自然的 MVC 擴充套件,因此非常契合)。

在 Web Flow 中,我們正在做一些事情,以便框架開發者更容易整合。首先,基本上有三個主要的擴充套件點:

  1. FlowExecutor SPI 允許 Web Flow 引擎嵌入到另一個環境中,例如 Web 框架。例如,這就是 Web Flow 整合到 Spring MVC 的方式。我們將 Spring MVC 視為最終的 Java 基礎 MVC 平臺,但如果您不能將其作為基礎,這個鉤子就在那裡。
  2. FlowBuilder SPI 允許您整合另一種定義流的語法。我們的 XmlFlowBuilder 隨 Web Flow 分發包提供。Graeme Rocher 為 Grails 開發了一個基於 Groovy 的流構建器。
  3. ViewFactory SPI 允許您將檢視框架整合到 Web Flow 中,用於在流中渲染檢視。這就是 Spring Faces 為 Web Flow 提供 JSF 支援的方式,也是劍橋大學 RSF 團隊將 Web Flow 與其框架整合的方式。我能想到的使用此擴充套件點進行整合的其他候選者包括 Wicket、Flex,也許還有 GWT。
  4. 這些擴充套件點中的每一個在 2.0 版本中都得到了簡化,而 ViewFactory 擴充套件點是新加入的。2.0 M4 還引入了一個新的“AjaxHandler”擴充套件點,用於整合 Ajax 請求/響應處理,並提供一個與 Spring Javascript 配合使用的實現。我們目前也正在與 IceFaces 團隊合作,以便在 2.0 最終版釋出前完成與他們 Ajax 元件庫的整合。

    Web Flow 2 的正式釋出即將到來。幫助我們使其儘可能易於使用和擴充套件!

獲取 Spring 新聞通訊

透過 Spring 新聞通訊保持聯絡

訂閱

領先一步

VMware 提供培訓和認證,助您加速進步。

瞭解更多

獲得支援

Tanzu Spring 提供 OpenJDK™、Spring 和 Apache Tomcat® 的支援和二進位制檔案,只需一份簡單的訂閱。

瞭解更多

即將舉行的活動

檢視 Spring 社群所有即將舉行的活動。

檢視所有