表面现象:
当一个Action中既没有重写ActionSupport中的validate方法,
也没有相关的validata.xml文件,
并且action中并没有INPUT的出口,
但是最终LOG里面却告诉我们这个Action返回INPUT了.
这到底是怎么一回事呢..
了解下代码:
webwork中,如果有添加workflow这个interceptor,
那么ActionA chain到 ActionB的时候,
如果ActionA中有调用 addActionError这个方法,
然后chain到ActionB,
这时候ActionB不会做任何事情,就直接返回INPUT了
原因是:
在workflow这个interceptor会对继承ValidationAware这个接口的Action
调用hasErrors()这个方法,如果这个方法返回true
,那么就直接返回INPUT,而不再往后面的action去执行了
workflow interceptor的官方说明http://www.opensymphony.com/webwork/wikidocs/Workflow%20Interceptor.html
也许有的同学就会问了,我就继承了ActionSupport方法啊,怎么会去验证hasErrors()这个方法呢?
虽然你没继承,但是是不是还有谁偷偷干了这事呢?
其实就在继承的ActionSupport这个父类里面继承了ValidationAware这个接口了.
分享到:
相关推荐
webwork中文 webwork中文参考 webwork中文资料 webwork学习资料
webwork中文帮助文档 webwork中文帮助文档 webwork中文帮助文档 webwork中文帮助文档 webwork中文帮助文档 webwork中文帮助文档
webwork2.17中文使用手册
webwork中文文档
webwork中上传文件,webwork文件上传.doc
webwork2中文参考
Webwork入门 WebWork入门教程[创建你第一个WebWork action]
webwork2中文教程,实例讲述教材。
自己学习webwork的参考手册,适合初学者
webwork 2.2.6 中文版本,然后编译生成chm格式,方面查看。
WebWork完全自学!
WEBWORK的配置
webWork中文教程
webwork2中文文档,是一个比较的中文文档
webwork教程webwork教程webwork教程webwork教程webwork教程webwork教程webwork教程webwork教程webwork教程webwork教程webwork教程webwork教程
WEBWORK的源文件压缩包WEBWORK的源文件压缩包WEBWORK的源文件压缩包WEBWORK的源文件压缩包WEBWORK的源文件压缩包WEBWORK的源文件压缩包WEBWORK的源文件压缩包WEBWORK的源文件压缩包WEBWORK的源文件压缩包
webwork源码下载
webwork的中文API,由高手翻译成的,非常有用。
webwork+spring整合例子 内带使用说明 以及webwork文档(中文) 下载
WebWork-2.1.7 中文开发文档-小白