论坛首页 Java企业应用论坛

欢迎大家探讨对Spring Web Flow的评价

浏览 14092 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-06-12  
我个人认为SpringWebflow是一个相当不错的引擎,楼上的已经说swf的优点了.
我只是在此重复表示下肯定的意见. 我们项目已经在一年前开始引用SWF, 那里Webflow才刚加入到Spring, 还只是预览版本,由于系统的流程过于繁杂,我们必须要一个以流程为中心的控制引擎,否则光靠Struts和JSF这样的简单的导航控制将很难维护, 而且无法实现流程级重用. 而SWF的引入完全解决了我们的要求, 楼上有朋友说SWF使维护变成了噩耗, Action太杂等问题, 我在这里说一句公道话, 如果你的流程里写了太多的action说明你的流程设计不合理,或者说没有真正理解业务需求, SWF的流程基本上能直观地映射为业务需求上的流程. 如果你的Action太多,还说明你的Service设计有问题,每个对外暴露的service方法应该是相对独立的,能自我表达的一个或一组完速的功能. 我们的项目里,没有写任何一个业务上的ACTION. 我们有且仅有的一个Action是系统级的, 用来为字段绑定值的,但这个action在SWF 1.0.3开始就已经失去了意义,因为官方已经加入了该功能.我们的系统流程相当多,相当繁杂,还常常需要流程与流程套用和互转,如果没有SWF,我们的项目开发与维护都将很痛苦,只能回到原始的struts的分模块管理配置文件的方式,而开发人员也要写无数个无聊的Action.
PS. 我们的项目是一个金融大型项目, 也可能是国内第一个正式采用SWF的项目.(偶早在SWF还未出世前就已经在研究它的前身Webflow了,后来它加入到Spring,我从pr5版本开始正式引入到系统框架,在经过技术验证和试运行后,在1.0M2版本开始,进入应用级开发, 在1.0.3版本时,项目开发和测试完毕,正式投入生产运行.目前在1.0.4版本上运行良好.)
0 请登录后投票
   发表时间:2007-06-12  
配置文件繁琐,比较适合图形化开发工具去配置生成。

SWF固然强大,但手工去写的话,得到灵活性,付出了大的工作量。直觉上感觉是得不偿失。


   个人觉得Spring Web Flow只是增加开发的复杂度,本来可以通过简单的硬编辑完成的东西,为什么硬要搞出一个配置文件来,大家看看Spring Web Flow给的那个例子(http://www.ervacon.com/products/springwebflow/article/index.html),根据查询用户,然后显示详细信息的例子,本来很简单的东西 ,硬是变得复杂了许多,不但多出了很多类不多,还多出了许多配置的信息,更让人纳闷的是Spring MVC该做的东西还一件都不能少。
/quote]
0 请登录后投票
   发表时间:2007-06-12  
langds 写道
我个人认为SpringWebflow是一个相当不错的引擎,楼上的已经说swf的优点了.
我只是在此重复表示下肯定的意见. 我们项目已经在一年前开始引用SWF, 那里Webflow才刚加入到Spring, 还只是预览版本,由于系统的流程过于繁杂,我们必须要一个以流程为中心的控制引擎,否则光靠Struts和JSF这样的简单的导航控制将很难维护, 而且无法实现流程级重用. 而SWF的引入完全解决了我们的要求, 楼上有朋友说SWF使维护变成了噩耗, Action太杂等问题, 我在这里说一句公道话, 如果你的流程里写了太多的action说明你的流程设计不合理,或者说没有真正理解业务需求, SWF的流程基本上能直观地映射为业务需求上的流程. 如果你的Action太多,还说明你的Service设计有问题,每个对外暴露的service方法应该是相对独立的,能自我表达的一个或一组完速的功能. 我们的项目里,没有写任何一个业务上的ACTION. 我们有且仅有的一个Action是系统级的, 用来为字段绑定值的,但这个action在SWF 1.0.3开始就已经失去了意义,因为官方已经加入了该功能.我们的系统流程相当多,相当繁杂,还常常需要流程与流程套用和互转,如果没有SWF,我们的项目开发与维护都将很痛苦,只能回到原始的struts的分模块管理配置文件的方式,而开发人员也要写无数个无聊的Action.
PS. 我们的项目是一个金融大型项目, 也可能是国内第一个正式采用SWF的项目.(偶早在SWF还未出世前就已经在研究它的前身Webflow了,后来它加入到Spring,我从pr5版本开始正式引入到系统框架,在经过技术验证和试运行后,在1.0M2版本开始,进入应用级开发, 在1.0.3版本时,项目开发和测试完毕,正式投入生产运行.目前在1.0.4版本上运行良好.)


贴出你的代码来,不要说空话,我给你设计一个场景,Javaeye的论坛,你给我用SWF实现一下,用你所谓的不写一个Action。
0 请登录后投票
   发表时间:2007-06-13  
downpour 写道
langds 写道
我个人认为SpringWebflow是一个相当不错的引擎,楼上的已经说swf的优点了.
我只是在此重复表示下肯定的意见. 我们项目已经在一年前开始引用SWF, 那里Webflow才刚加入到Spring, 还只是预览版本,由于系统的流程过于繁杂,我们必须要一个以流程为中心的控制引擎,否则光靠Struts和JSF这样的简单的导航控制将很难维护, 而且无法实现流程级重用. 而SWF的引入完全解决了我们的要求, 楼上有朋友说SWF使维护变成了噩耗, Action太杂等问题, 我在这里说一句公道话, 如果你的流程里写了太多的action说明你的流程设计不合理,或者说没有真正理解业务需求, SWF的流程基本上能直观地映射为业务需求上的流程. 如果你的Action太多,还说明你的Service设计有问题,每个对外暴露的service方法应该是相对独立的,能自我表达的一个或一组完速的功能. 我们的项目里,没有写任何一个业务上的ACTION. 我们有且仅有的一个Action是系统级的, 用来为字段绑定值的,但这个action在SWF 1.0.3开始就已经失去了意义,因为官方已经加入了该功能.我们的系统流程相当多,相当繁杂,还常常需要流程与流程套用和互转,如果没有SWF,我们的项目开发与维护都将很痛苦,只能回到原始的struts的分模块管理配置文件的方式,而开发人员也要写无数个无聊的Action.
PS. 我们的项目是一个金融大型项目, 也可能是国内第一个正式采用SWF的项目.(偶早在SWF还未出世前就已经在研究它的前身Webflow了,后来它加入到Spring,我从pr5版本开始正式引入到系统框架,在经过技术验证和试运行后,在1.0M2版本开始,进入应用级开发, 在1.0.3版本时,项目开发和测试完毕,正式投入生产运行.目前在1.0.4版本上运行良好.)


贴出你的代码来,不要说空话,我给你设计一个场景,Javaeye的论坛,你给我用SWF实现一下,用你所谓的不写一个Action。
To downpour.
呵呵,不好意思,我是说话不太注意用词,请哥们不要介意.
至于您给的这个场景,实在太大,我也实在没有这精力去设计一套流程出来.否则地话,我早该贴一些心得出来了.
这样吧,你能否先精简一下你目前已经有的一套你认为比较繁杂的且用了许多SWF Action的flow.大至给点注解,说明用这个action实现什么目的即可,让我们大家来看看有没有办法改进你的设计, 不知道你觉得如何?

等你的回复.
0 请登录后投票
   发表时间:2007-06-13  
webflow?
恐怕和 bea workshop 没法比吧。
用过 workshop,才能体会什么是flow.
0 请登录后投票
   发表时间:2007-06-14  
虽然对SWF的认识不是很深入,但个人认为是个不错的东西,值得深入研究!
0 请登录后投票
   发表时间:2007-06-21  
   谢谢大家涌跃的讨论和见解,langds对SWF应该经验丰富。从你说的经验中,可以看出你的项目本身页面流程复杂,所以使用一个复杂的SWF,反而带来了便利。那是不是可以得出这样的结论:SWF只适合于复杂页面流程的项目,而非一般的CRUD的项目呢?因为一般CRUD外带一些向导的项目,使用Spring MVC可以很好的达到要求,SWF应该不能够提供更简单的实现吧。
0 请登录后投票
   发表时间:2007-06-21  
yananay大概说的是bea的page flow(jpf),我们原来用这个开发过一个项目,其实它本身就是对structs包装了一下,在一个稍微复杂一点的应用里,page flow的流程图会让第一次看的人眼花缭乱的
0 请登录后投票
   发表时间:2007-06-22  
stamen 写道
   谢谢大家涌跃的讨论和见解,langds对SWF应该经验丰富。从你说的经验中,可以看出你的项目本身页面流程复杂,所以使用一个复杂的SWF,反而带来了便利。那是不是可以得出这样的结论:SWF只适合于复杂页面流程的项目,而非一般的CRUD的项目呢?因为一般CRUD外带一些向导的项目,使用Spring MVC可以很好的达到要求,SWF应该不能够提供更简单的实现吧。

确切地说:是这样。正如SWF官方声明的“SWF适合的与不适合的场景”,其中最不适合的就是无流程的只有简单的crud操作的应用。比如大多数的网站就是这样,在这样的应用里引用SWF反而会带来许多不便。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics