我正在使用Hibernate验证器4.1来验证我的实体。
我有一个可以从动作viewDashboard
访问的仪表板。在我的动作类中,我设置了两个List
的值。
public String execute() throws Exception { listDocteur = service.listDocteur(); listUser = service.listUser(); return SUCCESS; }
在DashBoard中,我有一个可以添加用户的提交按钮。
<action name="saveUser" class="com.test.action.CreateUserAction" method="execute"> <interceptor-ref name="mybasicStackWithValidation" > </interceptor-ref> <result name="input">/WEB-INF/jsp/viewDashboard.jsp</result> <result name="success" type="redirectAction">viewDashboard</result> </action>
如果我提交的值无效,我会看到错误消息,但我会丢失2个列表。如果我有type="redirectAction"
,我会丢失错误消息。
在Struts 1中,我会在没有viewDashboard.do
的情况下转发redirect
行动,这样就行了。我怎样才能在Struts2中实现这一目标?
答案 0 :(得分:0)
检查这可能会对您有所帮助,因为redirectAction意味着从头开始的新请求
答案 1 :(得分:0)
Action Chaining可能就是您要找的。 p>
链接“允许Action将请求转发到目标Action,同时传播源Action的状态。”
答案 2 :(得分:0)
我找到了解决方案。我必须使用<input type="redirectAction">youraction ..
并且需要将其放在SAVEAction
<interceptor-ref name="store"> <param name="operationMode">STORE</param> </interceptor-ref>
最后,在你的displayAction中(将显示错误信息)
<interceptor-ref name="store"> <param name="operationMode">AUTOMATIC</param> </interceptor-ref>
或RESTORE