锁定老帖子 主题:Webwork如何处理复杂的跳转
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2006-06-28
OneEyeWolf 写道 还是不大明白以下这个例子的跳转如何用webwork的Result实现:
从Request中取出URL。 然后跳往这个指定的URL。 谁知道? 参考 com.opensymphony.webwork.dispatcher.ServletRedirectResult 他接受两个参数 location parse(default true) 参见楼上 knight6892的例子 |
|
返回顶楼 | |
发表时间:2006-06-28
多谢各位帮助
|
|
返回顶楼 | |
发表时间:2006-06-30
实现了ServletRequestAware等注入接口,在做单元测试时,就不能用常规的注入方法进行单元测试,是不是要必须Mock出这些对象出来。才能进行单元测试?
|
|
返回顶楼 | |
发表时间:2006-06-30
OneEyeWolf 写道 实现了ServletRequestAware等注入接口,在做单元测试时,就不能用常规的注入方法进行单元测试,是不是要必须Mock出这些对象出来。才能进行单元测试?
set方法都有了,你还不会注入啊! |
|
返回顶楼 | |
发表时间:2006-06-30
他指的是被set的对象。
那是当然要new 的,不过有的就没必要mock了。 实际建立就好。 |
|
返回顶楼 | |
发表时间:2006-06-30
我的意思是:
如果set的对象是HttpServletRequest, 必须要Mock的,如果在Action中使用了Request,Session等对象,都需要MOCK后再注入的。类似于StrutsTestCase,它封装了MOCK操作,在做单元测试时,可以直接得到Mock对象,直接Put测试数据就行了。 |
|
返回顶楼 | |
发表时间:2006-06-30
最终的解决方案及应用案例如下:
现在写了一个公用的查询框架,使用查询的人继承这个查询框架,只需要组装SQL,返回一个SQL串就行了,不需要再写Action类,更不需要使用Struts-config文件或xwork.xml文件来配置,但对于查询后的跳转,框架是无从知道的,需要调用者来指定跳转页面。 现在的解决方案是又写一个配置文件,用户可以在配置文件中指定跳转类型,配置文件如下: <!--全局的跳转类型--> <global_redirects> <!-- 框架会调用session.getAttribute("returnURL");获得要跳转的URL,如果message不为空,在跳转后,还会弹出message对话框 --> <redirect type="getFromSession" param="returnURL" message="${message}"/> <!-- 框架会调用request.getAttribute("returnURL");获得要跳转的URL --> <redirect type="getFromReqeust" param="returnURL" message="${message}"/> <!-- 框架会调用request.getParam("forward");获得要跳转的Forward Name, 框架会在xwork配置文件中找到这个Forward --> <redirect type="getFormParam" param="forward" mesage="${message}" /> <!-- 下面是最简单的跳转,没有多大意义 --> <redirect type="common" name="SUCCESS" path="/common/success.jsp" message="${message}"/> <redirect type="common" name="FAILURE" path="/common/failure.jsp" message="${message}"/> </global_redirects> 请问,如果是你们做,会怎么处理这样的案例? |
|
返回顶楼 | |