Struts 2中操作名称的大小写敏感性

时间:2010-05-26 14:28:35

标签: struts2

是否有一种简单的方法可以使Struts 2动作名称不区分大小写?目前我定义了以下操作:

<action name="printTest" class="MyClass" >
  <result name="error">/WEB-INF/jsp/error.jsp</result>
  <result name="input">/WEB-INF/jsp/test.jsp</result>
  <result name="success">/WEB-INF/jsp/test.jsp</result>
</action>

如果用户键入网址/app/printtest.do而不是/app/printtest.do,则不会执行此操作。

除了httpd级别的mod_rewrite或类似的东西之外,我现在唯一知道的选项就是添加相同的确切操作并将名称更改为printtest。理想情况下,对struts.xml进行简单的配置更改。

1 个答案:

答案 0 :(得分:0)

没有可配置选项AFAIK,用于不区分大小写的映射。

所以,我相信你已经自己回答了这个问题:Apache的mod_rewrite,或者在配置中写出额外的映射。

您也可以编写自己的ActionMapper,扩展DefaultActionMapper(方法 parseNameAndNamespace()),但我怀疑它会有点过分......: - )