Spring 框架培训总结(8 月)

发布 | Colin Sampaleanu | 2005 年 8 月 16 日 | ...

(2005-8-19 更新,补充了华盛顿培训的缺失日期)。

Interface21 很高兴在即将到来的时间里提供一系列 Spring 框架培训活动,由构建 Spring 的同一人员授课。

有关完整详细信息,请访问主 培训信息页面

以下是即将举行的课程和场地的摘要

  • 核心 Spring:9 月 6 日至 9 日,英国伦敦
  • 核心 Spring:9 月 13 日至 16 日,美国纽约市(早鸟日期为 8 月 19 日!)
  • 核心 Spring:9 月 27 日至 30 日,美国加利福尼亚州圣何塞(早鸟日期为 9 月 9 日!)
  • 核心 Spring:10 月 11 日至 14 日,华盛顿特区(早鸟日期为 9 月 16 日!)
  • 使用 Oracle 的 Spring JDBC 开发:10 月 11 日至 12 日,美国纽约市
  • Spring 入门:11 月 7 日至 9 日,荷兰阿姆斯特丹(早鸟日期为 10 月 7 日!)
  • 核心 Spring:11 月 22 日至 25 日,荷兰阿姆斯特丹(早鸟日期为 10 月 28 日!)
  • Spring 入门:11 月 30 日至 12 月 2 日,荷兰阿姆斯特丹(早鸟日期为 10 月 28 日!)
对正式的 Spring 框架培训不感兴趣?如何在冬天体验一下 Spring?Spring Experience 2005 会议将于 12 月 7 日至 10 日在阳光明媚的佛罗里达州巴尔港举行。

Spring Web Flow PR5 发布

发布 | Keith Donald | 2005 年 7 月 28 日 | ...

我们很高兴地宣布 Spring Web Flow 预览版 5 (PR5) 发布。

从 Sourceforge 下载发布版

建议所有使用先前预览版用户升级到此版本。特别感谢 SWF 论坛社区 在准备此版本的质量方面提供的帮助。

此版本解决了 PR4 中引入的一些问题,特别是恢复了 JDK 1.3 和 Struts 1.1 的兼容性。它还在发布存档中添加了 API JavaDocs 以及大量通用发布文档。最后但并非最不重要的一点是,此版本改进了一步式构建过程,用于构建和部署示例应用程序。

访问 更改日志 以查看完整的更改集。

享受,

Keith Donald
Erwin Vervaet

Spring 框架 1.2.3 发布

发布 | Colin Sampaleanu | 2005 年 7 月 26 日 | ...

我们很高兴地宣布 Spring 1.2.3 刚刚发布。这是一个错误修复和次要增强版本,修复了许多与应用程序上下文启动序列相关的问题,并引入了各种次要的新功能。

建议所有 Spring 1.2.2 用户升级到 Spring 1.2.3,尤其是在使用工厂方法和/或自动代理创建(如事务注释支持中使用的那样)时。该领域的 Spring 1.2.1 的完全向后兼容性应该得到恢复。

与往常一样,有关增强功能和修复程序的完整列表,请参阅 更改日志

Spring IDE 1.2.2 发布

发布 | Torsten Juergeleit | 2005 年 7 月 25 日 | ...

尊敬的 Spring 社区:

我们很高兴地宣布 Spring IDE 1.2.2 已发布。
版本 1.2.2 是一个错误修复版本,并进行了一项增强。有关包含的错误修复和增强功能的完整列表,请访问 http://springide.org/project/milestone/Release%201.2.2

更改

  • BeansView 现在保留其状态,同时重新创建 BeansCoreModel(由于修改了 bean 配置文件)。

 

更多详细信息可从项目的网站获取 http://springide.org/

此版本可从项目的 Eclipse 更新站点获取 http://springide.org/updatesite/

对于错误报告,可以通过 http://springide.org/project/newticket 打开工单

Spring IDE WebFlow 编辑器预览版 2 发布

发布 | Torsten Juergeleit | 2005 年 7 月 19 日 | ...

尊敬的 Spring 社区:

我们很高兴地宣布 Spring IDE WebFlow 支持预览版 2 已发布。

PR2 是一个错误修复版本,并进行了一些增强。有关包含的错误修复和增强功能的完整列表,请访问 http://springide.org/project/report/9

更改

  • 完全支持 Spring WebFlow PR3 功能
  • WebFlowValidator 作为 Spring IDE 核心构建器扩展点的扩展
  • 完善了图形编辑器界面
  • 添加了对 Xml 注释的支持
  • 一些错误修复和增强功能

更多详细信息可从项目的网站获取 http://springide.org/

此版本可从项目的 Eclipse 开发人员更新站点获取 http://springide.org/updatesite_dev/

对于错误报告,可以通过 http://springide.org/project/newticket 打开工单。请使用版本“webflow.PR2”引用 PR2。即将发布的 PR3 版本将支持最近宣布的 Spring WebFlow PR4 功能。

Spring Web Flow PR4 发布

发布 | Keith Donald | 2005 年 7 月 17 日 | ...

尊敬的 Spring 社区:

我很高兴地宣布 Spring Web Flow 预览版 4 (PR4) 发布。此版本使 Spring Web Flow 能够与 Spring 1.2.2+ 一起使用。

这将是最后一个 Web Flow 预览版本;下一个版本将是 1.0 RC1。要下载,请访问:http://sourceforge.net/project/showfiles.php?group_id=73357&package_id=148517

注意:PR3 和 PR4 之间存在一些不兼容的更改。这包括从org.springframework.web.floworg.springframework.webflow的根包重命名,注意到 Web Flow 作为独立模块应拥有顶级包的状态。有关更改的完整列表,请访问此处的更改日志:http://opensource.atlassian.com/confluence/spring/display/WEBFLOW/Change+Log

针对 WebFlow Portlet 用户的特别说明:PR4 不提供 Portlet MVC 集成。Portlet MVC 用户需要等待几周后的 Web Flow RC1,届时 Portlet MVC 将与 Spring 1.3 集成并发布。对于由此带来的任何短期不便,我们深表歉意:预计在未来几周内将提供更好的 Portlet MVC 集成 + 示例应用程序。

此 PR4 版本包含许多新的和值得注意的增强功能。以下是一些增强功能

状态进入操作

任何 State 类型的任何实例都可以配置为进入操作,该操作将在进入状态时执行。这有助于通用状态设置逻辑。例如,ViewState 可以设置进入操作以执行任意预渲染逻辑。此类预渲染逻辑可能会加载参考数据以填充表单下拉列表。任何数量的操作都可以按顺序作为复合状态进入操作的一部分执行

<view-state id="displayCriteria" view="searchCriteria">
<entry>
<action bean="searchFormAction" method="setupForm"/>
<action bean="searchFormAction" method="setupReferenceData"/>
</entry>

<transition on="search" to="executeSearch">
<action bean="searchFormAction" method="bindAndValidate"/>
</transition>
</view-state>

可转换状态退出操作

任何 TransitionableState 类型的任何实例都可以配置为退出操作,该操作将在退出状态时执行。这有助于通用状态拆卸逻辑。同样可以指定多个操作,它们将自动包装在 CompositeAction 中。

<action-state id="executeSearch">
<action bean="searchAction"/>
<transition on="success" to="displayResults"/>
<exit>
<action bean="auditAction" method="logResults"/>
</exit>
</action-state>

流执行侦听器条件

在 PR4 之前,没有简单的方法来为一组流定义定义哪些侦听器应该观察启动的流执行。新的 FlowExecutionListenerCriteria 提供了一种可插拔策略,其中给定 Flow 定义的执行的适用侦听器集是在每个请求的基础上计算的。

<bean id="flowExecutionManager"
class="org.springframework.webflow.execution.servlet.ServletFlowExecutionManager">
<property name="listenerMap">
<map>
<entry value="*">
<key>
<list>
<bean class="example.Listener1"/>
<bean class="example.Listener2"/>
</list>
</key>
</entry>

<entry value="sampleFlowA">
<key>
<list>
<bean class="example.Listener3"/>
</list>
</key>
</entry>
</map>
</property>
...
</bean>

以上 Spring 配置将侦听器 1 和 2 附加到所有流(*)的执行,而侦听器 3 仅附加到“sampleFlowA”。

大大增强了表达式语言支持

此版本的一个真正优势是新 Spring 数据绑定模块的持续发展。spring-binding 中包含一个表达式解析和评估抽象,它与强大的类型转换工具无缝集成。这两者结合在一起,允许使用表示一个或多个表达式的任意字符串(例如“公告:${org} ${product} ${release} 发布!”)来使用和转换为可评估表达式,使用任何表达式语言,OGNL 为默认值。Spring Web Flow 在多个地方利用了此机制,包括重定向表达式、转换表达式和属性映射表达式

  1. 例如,针对请求上下文评估的重定向表达式
    redirect:/${sourceEvent.parameters.url}?attribute1=${flowScope.foo}&attribute
    2=${requestScope.bar}"
  2. 驱动动态状态转换决策的转换表达式
    <transition on="${result == 'success' && ${flowScope.selectedItinerary.price} > 500.0" to="requireCreditCheck"/>
  3. 在两个源之间映射属性的属性映射表达式
    <subflow-state id="browseDetails" flow="detailFlow">
    <attribute-mapper>
    <input value="${sourceEvent.parameters.id}" as="someBean.id" from="string" to="long"/>
    </attribute-mapper>
    ...
    </subflow-state>

增强的属性映射器类型转换支持

输入和输出映射元素的“from”和“to”属性可用于指定类型转换规则。因此,定义

<input value="${sourceEvent.parameters.id}" as="someBean.id" from="string" to="long"/>

表示

将 ${sourceEvent.parameters.id} 的值从字符串转换为长整型,并在 someBean.id 处设置长整型结果。

基于会话的事务同步器策略

PR4 中新增了一个事务同步器,它在 HTTP 会话范围的存储中管理事务令牌。它非常适合处理利用延续并需要防止发生重复应用程序事务的流。

新的便利操作实现

webflow.action 包现在包含了一些新的 Action 实现,包括:CompositeAction、DelegatingAction 和 GuardedAction。

支持 JMX 的流执行统计信息

sellitem 示例现在展示了如何使用 JMX 管理协议收集所有 Web Flow 的全局统计信息,并使用任何 JMX 客户端(例如 JDK 1.5 JConsole)监控这些统计信息。未来的 Web Flow 版本将增强此功能,以便能够基于每个流执行进行管理和监控。

简化并改进了与 Struts 的集成

通过 PR4 大大简化了与 Struts 1.x 的集成,并与 Spring 1.2.2 引入的 SpringBindingActionForm 保持一致。不再需要特殊的 FlowActionMapping,因为所有 Web Flow 特定的配置现在都由 Spring 管理。请参阅出生日期示例应用程序以了解具体示例。

其他

改进了 javadoc、错误消息和日志记录

构建系统得到了极大的改进,实现了示例应用程序的“一步式”构建/部署

Erwin 和我必须感谢 Colin Sampaleanu 构建了一个非常棒的构建系统来管理整个开发和发布过程。您会在下载 PR4 后发现,构建和部署示例应用程序以及 Spring Web Flow 的任何组件(例如项目本身或绑定模块)都非常简单,并具有细致的自动 jar 文件管理。此“通用构建”系统基于 Ant 1.6.x 并利用 Ivy 进行 jar 依赖项管理--

这些只是此版本中的一些新功能。有关完整变更列表,请参见 http://opensource.atlassian.com/confluence/spring/display/WEBFLOW/Change+Log

一如既往,我们非常重视您的反馈。预计 7 月底发布 Web Flow 1.0 RC1,其中将包含 Portlet MVC 和 JSF 集成。

此致,

Keith Donald
Erwin Vervaet

Spring IDE 1.2.1 发布

发布 | Torsten Juergeleit | 2005 年 7 月 14 日 | ...

我们很高兴地宣布 Spring IDE v1.2.1 已经发布。


1.2.1 版本是一个 bug 修复版本,并包含了一些增强功能。有关包含的 bug 修复和增强功能的完整列表,请访问 http://springide.org/project/milestone/Release%201.2.1

 

更改:
  • 更新到 Spring 1.2.2
  • Eclipse 重新启动后,图形会重新打开
  • 图形显示拦截器和查找方法的依赖关系
  • 验证器处理 ProxyFactoryBean 中的查找方法和拦截器名称列表
更多详细信息可从项目的网站获得 http://springide.org/

此版本可从项目的 Eclipse…

Spring Framework 1.2.2 发布

发布 | Colin Sampaleanu | 2005 年 7 月 5 日 | ...

我们很高兴地宣布 Spring 1.2.2 刚刚发布。这是一个 bug 修复和次要增强版本。它还为即将发布的 Spring Web Flow 发布候选版本提供了统一的基础。

除了改进 JTA 事务同步和 SQLException 转换之外,此版本还引入了各种内部重构和新的辅助类。此外,对 JDK 1.5 基于 XML 的属性格式的支持已添加到所有相关的 Spring 类中。

我们还在各个方面扩展了参考文档。最重要的是,它涵盖了 JDO、TopLink、OJB…

Spring Framework 1.2.1 发布

发布 | Colin Sampaleanu | 2005 年 5 月 28 日 | ...

我们很高兴地宣布 Spring 1.2.1 刚刚发布。这是一个 bug 修复和改进版本,解决了在 1.2 正式版中发现的一些问题。

此外,PetClinic 示例已更新,以作为 JMX 导出的展示:JDBC 版本现在通过 JMX 公开了缓存刷新操作和调用监控。

我们鼓励所有 Spring 1.2 RC/正式版用户升级到 Spring 1.2.1,特别是如果使用 Hibernate3 集成的用户。

有关更改和 bug 修复的完整详细信息,请参见 更改日志

仅供参考,计划在 6 月底发布 1.2.2 版本,其中将引入各种次要的新功能。请参见我们的 JIRA 以了解详细信息。

Spring Web Flow PR3 发布

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

Spring Web Flow PR3 已发布。以下是 Keith 在邮件列表中的公告: 

--- 

尊敬的 Spring 社区:

我很高兴地宣布 Spring Web Flow 预览版 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)现在都可以使用任意属性元数据进行注释。这些属性可以在 webflow xml 定义中使用“property”元素指定,并完全支持从字符串到类型的转换以及方便的类型别名。

例如

<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 社区中所有即将举行的活动。

查看全部