当表单验证失败时,Struts 控制器重定向到哪里?

发布于 2024-08-20 13:42:30 字数 193 浏览 2 评论 0原文

它是否重定向到 struts-config 文件的 action 元素中的 input 属性中的值?当验证失败时,我们如何为转发设置标志 redirect="true" ? (这样浏览器中就会显示被重定向到的页面的 url,而不是 html:form 操作 url。)

Does it redirect to the value in input attribute in the action element of struts-config file? How can we set the flag redirect="true" for the forward when validation fails? ( So that the url of page being redirected to, is shown in the browser instead of html:form action url. )

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

终止放荡 2024-08-27 13:42:30

如果存在任何验证错误,则不会调用操作类的“execute”方法;相反,控件将返回到“输入”文件,直到表单没有与之关联的 ActionErrors。所以你的陈述是正确的,你被重定向到“struts-config.xml”的“action”元素中的“input”属性中的值,或者更准确地说,你被转发到那里。

此时,您可以转发到一个包含类似内容的 JSP:

<%response.sendRedirect(strWhereTo);%>

或者您可以为“input”属性指定一个操作(*.do 或您正在使用的扩展名),其中该操作可以是 org.apache.struts.action.RedirectingActionForward 重定向到您的 JSP(自从我使用 Struts 以来已经有一段时间了,所以我对第二种方法不太确定:D)。

希望这有帮助。干杯!

If there are any validation errors, the "execute" method of the action class will not get called; instead the control will go back to the “input” file until the form has no ActionErrors associated with it. So your statement is correct, you get redirected to the value in the “input” attribute in the “action” element of “struts-config.xml”, or more exactly, you are forwarded there.

At this point you could forward to a JSP containing something like this in it:

<%response.sendRedirect(strWhereTo);%>

Or you could specify an action (*.do or what extension you are using) for the "input" attribute, where this action could be an instance of org.apache.struts.action.RedirectingActionForward which redirects to your JSP (it’s been a while since I used Struts, so I’m not so sure about this second method :D).

Hope this helps. Cheers!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文