sj:使用目标提交并且errorElementId无法正确呈现

时间:2015-04-01 02:34:23

标签: java validation jsp struts2 struts2-jquery

我有一个struts应用程序,在我使用sj:submit的一个页面中提交带有目标和errorElementId属性的页面。我在页面上使用了Struts2验证,结果类型是编写,以便成功将重定向到div,失败将操作重定向到相同的div,使用errorElementId,如下所示

<div id="errorDiv" >
<sj:submit targets="successDiv" errorElementDiv="errorDiv" />
</div>
<div id="successDiv">
</div>

在测试此页面时,我获得了对targets属性中给出的successDiv的成功响应,但是在验证错误的情况下,我希望页面返回到sj所属的同一div,即errorDiv,但是具有验证错误的页面也会在successDiv中呈现,如下所示

enter image description here

该操作的结果类型如下

<result name="success">jsp/process/processlist.jsp</result>
            <result name="input">jsp/process/addprocess.jsp</result>

有人可以告诉我哪里出错了。

2 个答案:

答案 0 :(得分:2)

input结果

<result name="input">jsp/process/addprocess.jsp</result>

指向发出请求的JSP。当验证拦截器向操作添加错误时,将返回此结果。但是此结果类型为dispatcher。在这种情况下,将呈现JSP页面并随响应一起返回。之后,回调处理程序(可能是success)将响应文本添加到div

答案 1 :(得分:0)

This为我工作。 它使用一个名为jsonValidationWorkflowStack的拦截器,它将返回由javascript处理的验证错误。