我在连续验证期间对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
我怎样才能让它们同时出现?
答案 0 :(得分: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>