是否有一种简单的方法可以使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
进行简单的配置更改。
答案 0 :(得分:0)
没有可配置选项AFAIK,用于不区分大小写的映射。
所以,我相信你已经自己回答了这个问题:Apache的mod_rewrite,或者在配置中写出额外的映射。
您也可以编写自己的ActionMapper,扩展DefaultActionMapper(方法
parseNameAndNamespace()
),但我怀疑它会有点过分......: - )