论坛首页 Java企业应用论坛

Webwork如何处理复杂的跳转

浏览 13444 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2006-06-25  
用习惯了Struts,如今要转到Webwork,还真是不顺。
   1、原来用习惯了Struts的DispatchAction, 现在在webwork还找不到类似这样的东东,用了Webwork之后,类似于Struts的ActionForm是少了,但搞的工程一大坨Action,越看越不顺眼
   2、在Struts中,可以很方便的得到Request,Response对象,如今还得自己实现ServletRequestAware,用一种很变态的方式获得Request对象。非常的不爽。
    在Action处理完后,处理复杂跳转时就非常的困难,在项目中,跳转时的URL取决于页面中指定的URL,即从Request中传回的URL,或从Session中取出URL再跳转。这时候,Action处理时不知道webwork有没有好的办法?
   发表时间:2006-06-25  
OneEyeWolf 写道
用习惯了Struts,如今要转到Webwork,还真是不顺。
   1、原来用习惯了Struts的DispatchAction, 现在在webwork还找不到类似这样的东东,用了Webwork之后,类似于Struts的ActionForm是少了,但搞的工程一大坨Action,越看越不顺眼
   2、在Struts中,可以很方便的得到Request,Response对象,如今还得自己实现ServletRequestAware,用一种很变态的方式获得Request对象。非常的不爽。
    在Action处理完后,处理复杂跳转时就非常的困难,在项目中,跳转时的URL取决于页面中指定的URL,即从Request中传回的URL,或从Session中取出URL再跳转。这时候,Action处理时不知道webwork有没有好的办法?


1、可以在Action里面定义一堆doXxx方法,然后直接通过URL: /action!xxx.action去调用,比Struts的DispatchAction不知道好用多少

2、ServletRequestAware是标准的接口注入方式,看来你对IoC还没有入门

3、你还不知道如何在xwork.xml的result里面通过表达式来自由跳转,比Struts写死在代码里面,灵活性不在一个数量级

BTW:今年年底以前,基于Webwork的Struts2.0就要发布了,我劝你还是别缅怀Struts了,Webwork不知道比Struts好用多少,强大多少。
0 请登录后投票
   发表时间:2006-06-26  
严重支持robbin

自己没发现webwork的好处,还抱怨webwork不好了。

顺便期待StrutsTi
0 请登录后投票
   发表时间:2006-06-26  
看来楼主还在用Struts的方法使用Webwork。

还是比较喜欢Webwork2.1.7这个版本,代码实在是干净,设计也很优雅。后面的Webwork2.2用下来有很多与以前习惯不同的地方,还有很多Bug。StrutsTi应该是基于Webwork2.2的吧,不知道有什么好的功能提升。
0 请登录后投票
   发表时间:2006-06-26  
1、可以在Action里面定义一堆doXxx方法,然后直接通过URL: /action!xxx.action去调用,比Struts的DispatchAction不知道好用多少

关于此点:如果用户恶意输入action!xxx.action,而doXxx中无定义此方法,
Webwork2.1.7怎样解决呢?
0 请登录后投票
   发表时间:2006-06-26  
lsqlister 写道
1、可以在Action里面定义一堆doXxx方法,然后直接通过URL: /action!xxx.action去调用,比Struts的DispatchAction不知道好用多少

关于此点:如果用户恶意输入action!xxx.action,而doXxx中无定义此方法,
Webwork2.1.7怎样解决呢?

default-action处理无效的url,global-exception-mappings处理抛出的异常,这样用户就看不到系统错误了
0 请登录后投票
   发表时间:2006-06-26  
webwork很不错,但现在特想在项目中玩玩spring MVC.

spring MVC确实不错,你弄明白了后,也是个很好的选择.

不想争论,只是个人观点.
0 请登录后投票
   发表时间:2006-06-26  
还是不大明白以下这个例子的跳转如何用webwork的Result实现:
  从Request中取出URL。
  然后跳往这个指定的URL。
 
  谁知道?
0 请登录后投票
   发表时间:2006-06-26  
呵,我知道你的这个需求。和这个论坛回复后跳到原来的页面。


http://forum.iteye.com/login.php?redirect=posting.php&mode=reply&t=21000

我的建议是专门写个servlet,让本action用chain类型,到这个servlet,servlet转发或跳转。

我就是这么做的,毕竟这个需求比较单一,写个servlet很好处理的。
0 请登录后投票
   发表时间:2006-06-26  
我的项目中很多都是这样子的,我觉得这样的需求,也很正常,我初转Webwork,并不是说webwork不好,只是现在想尽快的进入角色,使用webwork来解决项目中的实际问题,而不是写一些HelloWord之类的东东。所以那些Webwork的Fans不要太在意。
0 请登录后投票
论坛首页 Java企业应用版

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