返回
Apache Struts 2:如何解决“AddTaskAction 未定义结果”错误?
java
2024-03-08 17:45:11
Apache Struts 2:解决“AddTaskAction 未定义结果”错误
概述
当在 Apache Struts 2 应用程序中使用 AddTaskAction
时,您可能会遇到以下错误:
错误原因:
你没有在 struts.xml
中为你的 AddTaskAction
定义结果。结果名称应与方法签名中的返回值相匹配。
解决方法:
要在 struts.xml
中定义结果,请执行以下步骤:
- 添加一个
action
元素,其中包含name
、class
和method
属性,如下所示:
<action name="AddTaskAction" class="actions.AddTaskAction" method="post">
- 在
action
元素内,添加以下结果:
<result name="success">/success.jsp</result>
<result name="error">/error.jsp</result>
<result name="input">/addTask.jsp</result>
success
结果表示在成功执行操作后要重定向到的 JSP 页面。error
结果表示在操作失败时要重定向到的 JSP 页面。input
结果表示在验证失败时要重定向到的 JSP 页面。
完整示例
现在,您的 struts.xml
应该如下所示:
<action name="AddTaskAction" class="actions.AddTaskAction" method="post">
<result name="success">/success.jsp</result>
<result name="error">/error.jsp</result>
<result name="input">/addTask.jsp</result>
</action>
结论
通过按照这些步骤,您应该能够解决 AddTaskAction
未定义结果错误。请注意,结果名称应始终与方法签名中的返回值相匹配。
常见问题解答
- 为什么需要定义结果?
结果定义操作成功或失败后应用程序应该采取的措施。 - 如何定义更多结果?
您可以在action
元素中添加任意数量的result
元素。 - 可以命名结果为任意名称吗?
否,结果名称必须与方法签名中的返回值相匹配。 - 如何重定向到特定的 JSP 页面?
在result
元素中使用name
属性指定 JSP 页面的路径。 - 如何重定向到一个操作?
在result
元素中使用type
属性并将其设置为redirectAction
。