Struts 2在重定向时删除.action扩展名

时间:2013-12-28 12:20:53

标签: java redirect struts2

在开始之前,我很抱歉我的英语不好,因为英语不是我的第一语言。但是,我在Struts 2重定向方面遇到了问题。

我的Struts.xml文件的一部分是这样的:

<package name="login" namespace="/" extends="struts-default">
    <action name="login" class="Action.loginAction">
        <result name="success" type="redirectAction">
            <param name="actionName">search</param> 
            <param name="namespace">/</param> 
        </result>
        <result name="error">/login.jsp</result>
        <result name="input">/login.jsp</result>
    </action>
</package>

我有loginAction负责登录用户(无论此文件的内容是什么)。如果此操作的结果为success,我想重定向到search操作。一切正常,但我的问题是,当我重定向到search操作时,网址如下所示:http://localhost:8080/MyWebApplication/search.action

我希望在重定向到特定操作时从网址中删除.action。我需要更改什么来解决这个问题?

感谢您的关注。

1 个答案:

答案 0 :(得分:0)

默认情况下,struts2框架会添加.action,您可以通过以下配置覆盖它。

<constant name="struts.action.extension" value=""/> 

对于ref: http://struts.apache.org/release/2.3.x/struts2-core/apidocs/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.html