我有一个struts应用程序,在其中一个页面中我使用
sj:submit
提交带有目标和errorElementId
属性的页面。我在页面上使用了Struts2验证并写入了结果类型,以便成功重定向到一个 div 并且失败会将操作重定向到同一个 div,使用 errorElementId
如下
<div id="errorDiv" >
<sj:submit targets="successDiv" errorElementDiv="errorDiv" />
</div>
<div id="successDiv">
</div>
在测试此页面时,我得到了对 successDiv 的成功响应,如目标属性中给出的那样,但如果出现验证错误,我希望页面返回到 sj 所属的同一 div,即 errorDiv ,但也会返回验证错误的页面在 successDiv 中呈现,如下所示
操作的结果类型如下
<result name="success">jsp/process/processlist.jsp</result>
<result name="input">jsp/process/addprocess.jsp</result>
有人可以告诉我哪里出了问题吗?
input
结果
<result name="input">jsp/process/addprocess.jsp</result>
指向发出请求的 JSP。当验证拦截器向操作添加错误时,将返回此结果。但这个结果类型是
dispatcher
。在这种情况下,JSP 页面将被呈现并与响应一起返回。之后,回调处理程序(可能是 success
)将响应文本添加到 div
。
这对我有用。 它使用一个名为 jsonValidationWorkflowStack 的拦截器,它将返回由 javascript 处理的验证错误。