- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
升级到SpringWebFlow2
1.2 流定义语言 1
升级到Spring Web Flow 2
1.1 介绍
本章说明如何将Spring Web Flow 1 (SWF 1)应用程序升级到Spring Web Flow 2 (SWF 2 )。
1.2 流定义语言
Spring Web Flow 1和2 的流定义语言的核心概念没有变。不过,部分元素和属性名有一
些改变。这么做是为了让该语言更简洁、更有表现力。1.5节中有完整的变更映射的目录。
1.2.1 流定义升级工具
Spring Web Flow 2中提供了一个自动化的工具,能协助将1.x的流转换为2.x 的风格。如
果需要,该工具能将所有旧的标签名称转换成相应的新名称。虽然该工具尽力去做转换,但
并不能将版本1中所有的概念都一对一地映射到版本2 。对于不能转换的部分,该工具会在结
果流中标记上WARNING的注释。
该转换工具需要spring-webflow.jar 、spring-core.jar 以及一个XSLT 1.0 引擎,推荐使用
Saxon 6.5.5。
可以通过如下的命令行运行此工具。必要的库文件需包含在classpath中。要转换的源
流文件只能是单个流。转换的结果流将被发送到标准输出上。
java org.springframework.webflow.upgrade.WebFlowUpgrader flow-to-upgrade.xml
2 升级到 Spring Web Flow 2
1. 流定义升级工具的一些警告信息
不再支持参数parameter-type
不建议使用Bean动作,推荐基于使用EL 的求值表达式。EL表达式能够直接接受方法参
数,所以参数标签不再需要。这种变化的负面作用是调用动作之前,方法参数必须是正确的
类型。
不再支持inline-flow
不再支持内联流。内联流中的内容必须移至新的顶层流中。内联流中的内容已经为你转
换好。
不再支持映射target-collection
输出映射不能再添加项到集合中。只支持赋值。
不再支持Bean属性var
不再需要Bean属性var。所有的Spring Bean都可以通过EL解析。
不再支持var 作用域
元素var将所有的变量放到流作用域中。以前对话作用域是允许的。
2 .EL 表达式
在流定义语言中使用了很多EL表达式。大部分看上去像普通文本的属性实际上都作为
EL被解释。标准的EL分隔符(${}或者#{})不再需要了,而且如果包含了它们通常会产生
异常。
升级工具会在必要的地方删除EL分隔符。
1.3 Spring Web Flow 配置
在Spring Web Flow 1中,配置Web流有两个选择,一是使用标准的Spring Bean的XML ,
1.3 Spring Web Flow 配置 3
另一个是使用webflow-config-1.0 Schema 。Schema配置选项隐藏较长的内部类名并开启
上下文自动完成功能,从而简化配置过程。在Spring Web Flow 2中,Schema配置选项是唯一
可用的配置方式。
1.3.1 Spring Web Flow Bean 配置
Spring Web Flow 1中使用的FactoryBean Bean XML 配置方法在Spring Web Flow 2中不
能使用,而用Schema配置方法替代它。尤其是应该更新定义FlowExecutorFactoryBean和
XmlFlowRegistryFactoryBean的Bean 。详细信息请继续阅读下节内容。
1.3.2 Spring Web Flow Schema 配置
Spring Web Flow 1和2 中的webflow-config配置Schema也有一点点的改变。升级应用程
序最简单的方法是将Schema的版本修改为2.0 ,然后修改所有出现的错误(在Schema感知的
XML编辑器中,相应的错误会自动显示出来)。最常见的变化是在元素的开始部分追加由
Schema定义的flow-。
文档评论(0)