0

在连续验证期间,我在 struts2 中的验证存在小问题。现在,如果第一次在表单上发现错误,则使用正确的 url,例如:

http://localhost:8080/Appname/Secure/AddAction.action

但是,如果在第二次验证期间表单出现错误,则使用生成的 url(此 url 错误)

 http://localhost:8080/Appname/AddAction.action

这就是我在 struts.xml 中所拥有的

 <action name="AddAction" class="controller.AddAction">
            <param name="dR"></param>
            <param name="dS"></param>
            <result name="input">/Secure/AddAction.jsp</result>
            <result name="error">/Error.jsp</result>
            <result name="success" type="redirect">
                <param name="location">/Secure/AddAction.jsp?msg=${msg}</param>
            </result>
        </action>

关于我如何解决问题的任何建议

编辑:更新:所以在验证中我输入了以下代码

HttpServletRequest request = ServletActionContext.getRequest();
            String r = request.getRequestURI();

第一次:/Appname/Secure/AddAction.action

但下一次它:/Appname/AddAction.action

我怎样才能让它们两次都一样?

4

1 回答 1

0

哪个命名空间位于您的操作?默认还是安全?试试这个也许:

<action name="/Secure/AddAction" class="controller.AddAction">
            <param name="dR"></param>
            <param name="dS"></param>
            <result name="input">/Secure/AddAction.jsp</result>
            <result name="error">/Error.jsp</result>
            <result name="success" type="redirect">
                <param name="location">/Secure/AddAction.jsp?msg=${msg}</param>
            </result>
        </action>
于 2012-06-28T10:56:46.953 回答