最近公司项目使用struts2.0, 在用到struts2.0中的validation框架时,当为一个Action指定Actionname-validation.xml验证规则后,validation interceptor会为该Action中的每个方法都执行validation,这样很烦。
(1)有一种解决方法是为其余不需要进行验证的方法加上annotation,即在方法前加上@SkipValidation。
(2)另一种方法是今天在mailing list中看到的,为Action中的指定方法指定一个验证规则,命名为Actionname-alias-validation.xml,在struts2.0自带的mailreader例子中有使用,可以参考。
如mailreader的例子中,struts中的配置如下:
xml 代码
- <package name="subscription" namespace="/" extends="mailreader-support">
-
- <global-results>
- <result name="input">/Subscription.jspresult>
- <result type="redirect-action">Registration_inputresult>
- <global-results>
-
- <action name="Subscription_save" method="save" class="mailreader2.Subscription">
- <interceptor-ref name="user-submit" />
- <action>
-
- <action name="Subscription_*" method="{1}" class="mailreader2.Subscription" />
-
- <package>
然后在mailreader2包下有一个Subscription类,及一个Subscription-Subscription_save-validation.xml文件,还有一个Subscription-validation.xml文件。
注意:Subscription_save是在struts 中定义的action的name,在struts中还要指定Subscription_save所对应的方法。
(3)还有一种方法,也是我认为最简单的方法就是如下配置:
xml 代码
- <package name="subscription" namespace="/" extends="mailreader-support">
-
- <global-results>
- <result name="input">/Subscription.jspresult>
- <result type="redirect-action">Registration_inputresult>
- <global-results>
-
- <action name="Subscription" class="mailreader2.Subscription">
- <interceptor-ref name="defaultStack">
- <param name="validation.excludeMethods">*param>
- <param name="validation.includeMethods">需要验证的方法名称,以逗号分隔param>
- interceptor-ref>
- <action>
- <package>
分享到:
相关推荐
1.针对验证的action在action的包下新建一个xml文件,命名:action的名-validation.xml 2.src下的资源文件 3.struts.xml中引入资源文件
2 利用struts2 的LoginAction-validation.xml 3 在bean里把service包;暴露DWR,写了一个验证用户名的流程 4 采用jpa作为POJO,还是减少配置 5 加入display的分页,并且是物理分页 打开后自已建表sql.txt jdbc....
【用于JAVA开发中的 Struts2.0 + Spring2.0 + Hibernate3.2 框架整合程序开发】 强大的支撑功能,堪称JAVA SSH编程的利器,你绝对值得拥有! 自动生成以下所有内容(即:完整的Java SSH支持的工程) Sturts2.0配置-->...
用于JAVA开发中的 Struts2.0 + Spring2.0 + Hibernate3.2 框架整合程序开发】 强大的支撑功能,堪称JAVA SSH编程的利器,你绝对值得拥有! 自动生成以下所有内容(即:完整的Java SSH支持的工程) Sturts2.0配置--> ...
【用于JAVA开发中的 Struts2.0 + Spring2.0 + Hibernate3.2 框架整合程序开发】 强大的支撑功能,堪称JAVA SSH编程的利器,你绝对值得拥有! 自动生成以下所有内容(即:完整的Java SSH支持的工程) Sturts2.0配置-->...
JSP文件--> 具有Struts2.0支持的增、删、改、查页面及自定义查询、自动分页等操作 Action--> 业务Action.java和导出Excel的Action等 VO --> bean.java及 bean.hbm.xml配置文件 Service --> Service接口定义类 ...
134、在JSP中如何定义方法 33 135、在JSP中能发送EMAIL吗 34 136、在SERVLET中我能调用一个JSP错误页吗 34 137、APPLET和JSP如何通讯 35 138、JSP如何与EJB SessionBean通讯 35 139、当我使用一个结果集时,如何防止...
134、在JSP中如何定义方法 33 135、在JSP中能发送EMAIL吗 34 136、在SERVLET中我能调用一个JSP错误页吗 34 137、APPLET和JSP如何通讯 35 138、JSP如何与EJB SessionBean通讯 35 139、当我使用一个结果集时,如何...
Struts2.0..263 第一章 MVC Model.........................263 第二章 Struts Basic264 第三章 Action,Result & Struts2 Tag Library......................267 第四章 Data Transfer & Type Converter..273 第五...
Struts2.0..263 第一章 MVC Model.........................263 第二章 Struts Basic264 第三章 Action,Result & Struts2 Tag Library......................267 第四章 Data Transfer & Type Converter..273 第五...