这工作一个月前,现在我重新加载代码,它不起作用。这里是我的支杆剪错误未被传递回struts jsp
<action name="checkManager" class="CheckAction">
<result>/pages/check_manager.jsp</result>
</action>
<action name="submitFile" class="SubmitFileAction">
<result name="success">/pages/submit_file.jsp</result>
<result name="error">/pages/check_manager.jsp</result>
</action>
因此,第一页是checkManager
。它有一个调用submitFile
操作的按钮。当它触发时,它会检查密码,如果它失败,则操作类发送错误结果。现在一个月前,上面的结果错误会将用户重定向回原始的check_manager.jsp
页面,其中包含最初加载的数据和错误消息。今天,它将用户重定向到原始页面check_manager.jsp
。没有数据,就像servlet从未被解雇,只是呈现一个空白的jsp页面。我查看了源代码历史记录,在这个应用程序中没有任何改变
我不明白为什么这会停止工作,任何人都可以给我一个想法?我必须在大约一个半小时内向客户介绍这件事,所以我真的被困在这里。
说明,我试图改变错误此
<result name="error" type="redirectAction">checkManager</result>
,我得到我的数据回来,但我失去我的错误消息,这是不是一件好事。呃,有什么想法?
if (enteredHash.equals(storedHash)) {
_log.debug("The password matched");
UserSession<User> userSession = (UserSession<User>) session
.get("user");
#do logic#
} else {
_log.debug("The password didn't match");
addActionError("The password you entered was incorrect, nothing was sent to the bank.");
return ActionSupport.ERROR;
}
return ActionSupport.SUCCESS;
我的jsp
<s:if test="hasActionErrors()">
<div class="errors">
<s:actionerror/>
</div><br>
</s:if>
再次,这完美地工作在一个月前。我所做的只是检查一直未被触及的部署。现在它不起作用。
你是如何将这些数据提供给JSP的?你是否添加了一个动作错误?你能为你的行为提供代码吗? – rees 2012-07-10 12:32:14
你在jsp中有这个:'
'? – rees 2012-07-10 12:40:02我说得对,当你在这种类型的工作流之后转到另一个JSP时,它应该把原始页面中的数据带到servlet中吗?我的意思是这里是整个checkaction类'public class CheckAction extends ActionSupport { \t private Collection checkList; \t public Collection getCheckList(){ \t \t return checkList; \t} \t公共字符串执行(){ \t \t清单= Check.list(); \t \t return SUCCESS; \t} }' –
scphantm
2012-07-10 12:45:52