论坛首页 Java企业应用论坛

Struts2在路上2。。。。。。

浏览 5092 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-09-14  

2.关于关闭Struts2自动验证的烦人英文问题。

应该有不少使用Struts2的人都是从Struts1过来的,但Struts2和Struts1是完全不同的,所以在配置Struts2的时间,难免有点畏缩,喜欢用它的默认配置。比如在自己建立的Struts.xml里,大家一般都这么写:

xml 代码
  1. <!---->
  2.         "http://struts.apache.org/dtds/struts-2.0.dtd">  
  3. <struts>  
  4.   
  5.     <include file="struts-default.xml" />  
  6.     <include file="struts_xml/welcome.xml" />  
  7.     <include file="struts_xml/employee.xml" />  
  8.     <include file="struts_xml/department.xml" />  
  9.     <include file="struts_xml/nunEnterprise.xml" />  
  10.     <include file="struts_xml/enterprise.xml" />  
  11.     <include file="struts_xml/foreignEnterprise.xml" />  
  12.     <include file="struts_xml/exhibition.xml" />  
  13.     <include file="struts_xml/training.xml" />  
  14.     <include file="struts_xml/serviceEnterprise.xml" />  
  15.     <include file="struts_xml/mailController.xml" />  
  16.     <include file="struts_xml/enterpriseSearchController.xml" />  
  17.     <include file="struts_xml/foreignEnterpriseSearchController.xml" />  
  18.     <include file="struts_xml/serviceEnterpriseSearchController.xml" />  
  19.     <include file="struts_xml/nunEnterpriseSearchController.xml" />  
  20.     <include file="struts_xml/jChartController.xml" />  
  21.   
  22.   
  23.     <package name="default" extends="struts-default">  
  24.         <global-results>  
  25.             <result name="Exception">/exception.jspresult>  
  26.             <result name="SQLException">/exception.jspresult>  
  27.         global-results>  
  28.   
  29.   
  30.         <global-exception-mappings>  
  31.             <exception-mapping exception="java.sql.SQLException"  
  32.                 result="SQLException" />  
  33.             <exception-mapping exception="java.lang.Exception"  
  34.                 result="Exception" />  
  35.         global-exception-mappings>  
  36.     package>  
  37.        
  38. struts>  

里面有一个叫“struts-default.xml”,  这是Struts2默认的重要配置文件。而且interceptor默认的配置为:

xml 代码
  1. <interceptor-stack name="defaultStack">  
  2.     <interceptor-ref name="exception"/>  
  3.     <interceptor-ref name="alias"/>  
  4.     <interceptor-ref name="servletConfig"/>  
  5.     <interceptor-ref name="prepare"/>  
  6.     <interceptor-ref name="i18n"/>  
  7.     <interceptor-ref name="chain"/>  
  8.     <interceptor-ref name="debugging"/>  
  9.     <interceptor-ref name="profiling"/>  
  10.     <interceptor-ref name="scopedModelDriven"/>  
  11.     <interceptor-ref name="modelDriven"/>  
  12.     <interceptor-ref name="fileUpload"/>  
  13.     <interceptor-ref name="checkbox"/>  
  14.     <interceptor-ref name="staticParams"/>  
  15.     <interceptor-ref name="params">  
  16.       <param name="excludeParams">dojo\..*param>  
  17.     interceptor-ref>  
  18.     <interceptor-ref name="conversionError"/>  
  19.     <interceptor-ref name="validation">  
  20.         <param name="excludeMethods">input,back,cancel,browseparam>  
  21.     interceptor-ref>  
  22.     <interceptor-ref name="workflow">  
  23.         <param name="excludeMethods">input,back,cancel,browseparam>  
  24.     interceptor-ref>  
  25. interceptor-stack>  

 

是不是什么interceptor都给你加载了。如果你这个时候使用了Validation.xml,那么一旦出现类型转换错误的失误,就会出现一些烦的英文,解决办法是:

xml 代码
  1. <!---->
  2.         "http://struts.apache.org/dtds/struts-2.0.dtd">  
  3. <struts>  
  4.   
  5.     <package name="employee" extends="default">  
  6.   
  7.         <interceptors>  
  8.             <interceptor-stack name="modefied">  
  9.                 <interceptor-ref name="exception" />  
  10.                 <interceptor-ref name="alias" />  
  11.                 <interceptor-ref name="servlet-config" />  
  12.                 <interceptor-ref name="prepare" />  
  13.                 <interceptor-ref name="i18n" />  
  14.                 <interceptor-ref name="chain" />  
  15.                 <interceptor-ref name="debugging" />  
  16.                 <interceptor-ref name="profiling" />  
  17.                 <interceptor-ref name="scoped-model-driven" />  
  18.                 <interceptor-ref name="model-driven" />  
  19.                 <interceptor-ref name="fileUpload" />  
  20.                 <interceptor-ref name="checkbox" />  
  21.                 <interceptor-ref name="static-params" />  
  22.                 <interceptor-ref name="params" />  
  23.   
  24.                 <interceptor-ref name="validation">  
  25.                     <param name="excludeMethods">  
  26.                         input,back,cancel,browse   
  27.                     param>  
  28.                 interceptor-ref>  
  29.                 <interceptor-ref name="workflow">  
  30.                     <param name="excludeMethods">  
  31.                         input,back,cancel,browse   
  32.                     param>  
  33.                 interceptor-ref>  
  34.             interceptor-stack>  
  35.         interceptors>  
  36.         <default-interceptor-ref name="modefied" />  
  37.   
  38.   
  39.   
  40.   
  41.         <!---->  
  42.         <action name="employeeLogin"  
  43.             class="cn.gov.tdb.controller.EmployeeLoginController"  
  44.             method="login">  
  45.             <result name="success">welcome.jsp?active=1result>  
  46.             <result name="input">login.jspresult>  
  47.         action>  
  48.   
  49.         <action name="employeeLogout"  
  50.             class="cn.gov.tdb.controller.EmployeeLoginController"  
  51.             method="logout">  
  52.             <result name="success">index.jspresult>  
  53.             <result name="input">index.jspresult>  
  54.         action>  
  55.         <!---->  
  56.   
  57.   
  58.         <!---->  
  59.   
  60.         <action name="employeeCRUD"  
  61.             class="cn.gov.tdb.controller.EmployeeController"  
  62.             method="saveEmployee">  
  63.             <result name="success">welcome.jsp?active=1result>  
  64.             <result name="input">employeeForm.jspresult>  
  65.         action>  
  66.   
  67.         <action name="listEmployees"  
  68.             class="cn.gov.tdb.controller.EmployeeController"  
  69.             method="listEmployees">  
  70.             <result name="success">listEmployees.jspresult>  
  71.             <result name="input">listEmployees.jspresult>  
  72.         action>  
  73.         <!---->  
  74.   
  75.     package>  
  76. struts>  

 自己重定义一个interceptor, 把

xml 代码
  1. <interceptor-ref name="conversionError"/>  

删除就可以了。这样,烦人的英文就解决了~~~~~~~

 

   发表时间:2008-09-12  
我们没必要把那么多配置文件都写到里面吧?只要继承struts-default默认情况下就已经把过滤其加载进来了。。。。,只需要排除验证过滤器不就行了。。。
0 请登录后投票
论坛首页 Java企业应用版

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