Spring Web Flow PR3 已發布

發布 | Colin Sampaleanu | 2005 年 5 月 23 日 | ...

Spring Web Flow PR3 已經發布。這是 Keith 的郵件列表公告:

---

親愛的 Spring 社群,

我很榮幸地宣布 Spring Web Flow Preview 3 的發布。這是一個重要的全新版本,具有大量新功能:無論是在功能還是便利性方面。此版本被認為適用於開發用途。

要下載,請訪問:http://sourceforge.net/project/showfiles.php?group_id=73357&package_id=148517

注意:PR2 和 PR3 之間有一些不相容的變更。有關列表和移植指南,請訪問此處的變更日誌:http://opensource.atlassian.com/confluence/spring/display/WEBFLOW/Change+Log

此版本包含許多新的和值得注意的增強功能。以下是一些:

檢視狀態增強

  • 現在可以為每個檢視狀態配置一個或多個設定動作。此動作會在進入狀態後但在控制權返回給客戶端以進行回應呈現之前執行。這減少了(在許多情況下消除了)對設定動作狀態的需求,從而使流程定義更加簡潔。
  • 現在每個檢視狀態都可以使用新的 ViewDescriptorCreator 策略,以完全動態、可插拔的方式選擇要呈現的檢視和所有支援的模型資料。
  • 現在支援強大的重新導向表達式,完全支援以動態方式從流程 RequestContext 解析重新導向參數。
以下是這些新功能的實際應用範例

設定動作

 <view-state id="displayCriteria" view="criteriaView">
            <setup bean="searchFormAction" method="setupForm"/>
            <transition on="submit" to="executeQuery">
                  <action bean="searchFormAction" method="bindAndValidate"/>
            </transition>
</view-state>

重新導向表達式

<end-state id="end" view="redirect:/myFlow.htm?input=${flowScope.input}"/>

子流程屬性映射增強

  • 現在可以透過 XML 流程定義完全配置子流程輸入和輸出映射策略。
  • 也可以指定表達式,以動態方式解析子流程輸入屬性值。

例如

<attribute-mapper>
            <input value="${sourceEvent.parameters.id}" as="id" type="long"/>
</attribute-mapper>

使用的表達式語言也是可插拔的——預設情況下,web flow 會嘗試 OGNL,如果它在類別路徑上找不到,它將使用 Spring 的 BeanWrapper。

已註解的定義物件

  • 除了動作執行參數之外,系統中的每個核心定義物件——Flow、State 和 Transition——現在都可以使用任意屬性元資料進行註解。這些屬性可以使用 "property" 元素在 webflow xml 定義中指定,完全支援從字串類型轉換以及方便的類型別名。

例如

<transition on="submit" to="executeQuery">
            <property name="submitPressed" value="true" type="boolean"/>
</transition>

在這種情況下,這個 'submitPressed' 布林屬性將在進入後提供給此轉換的目標狀態,以進行推理。

增強的流程執行監聽器回呼

  • 回應執行流程生命週期的監聽器現在有更多掛鉤來插入自訂邏輯——現在在流程開始、已開始、暫停、恢復、進入新狀態、已進入新狀態或已結束時會發出通知——並具有否決提議的流程狀態變更的能力(例如,為了促進狀態前提條件檢查)。

---

這些只是此版本的一些新功能。有關變更的完整列表,請參閱 http://opensource.atlassian.com/confluence/spring/display/WEBFLOW/Change+Log

一如既往,我們非常重視您的意見回饋。還有再一兩個 PR 版本,我們將達到 1.0 最終版!

感謝,

Keith Donald
Erwin Vervaet

取得 Spring 電子報

隨時關注 Spring 電子報

訂閱

搶先一步

VMware 提供培訓和認證,以加速您的進展。

了解更多

取得支援

Tanzu Spring 在一個簡單的訂閱中提供 OpenJDK™、Spring 和 Apache Tomcat® 的支援和二進位檔案。

了解更多

即將到來的活動

查看 Spring 社群中所有即將到來的活動。

查看全部