1.addErrors与saveErrors有什么区别?
在struts1.2以上版本中的Action才会有addErrors这个方法
addErrors和saveErrors的区别一个是添加到当前,一个会替换掉当前。
1.saveErrors :替换掉当前,如下:message2替换了message
a.Java代码:
public class LoginAction extends Action{
@Override
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
UserForm userForm = (UserForm)form;
ActionErrors errors = new ActionErrors(); //从struts1.2开始不推荐使用了
ActionMessages messages = new ActionMessages();//从struts1.2开始,不管错误还是提示信息,推荐统一使用这个
messages.add("error2", new ActionMessage("login.error.error2"));//ActionMessage从资源文件中获取数据
//struts1.1中使用 不正常,在struts1.2中没问题
messages.add("error3", new ActionMessage("数据采集失败...", false));
ActionMessages messages2 = new ActionMessages();
messages2.add("error3", new ActionMessage("数据采集失败2222...", false));
this.saveMessages(request, messages);
this.saveMessages(request, messages2);//message2将message替换了
return mapping.findForward("error");
}
}
b.在src目录下存放资源文件ErrorDescription.properties, 内容如下:
login.error.error2=我是徐艳荣
c.JSP代码:
<html:messages id="message">
<bean:write name="message"/>
</html:messages>
d.测试结果:数据采集失败2222...
2.addErrors : 添加到当前,如下:就像message2 与message合并了,至于怎么实现的,可以看源码
a.java代码:
public class LoginAction extends Action{
@Override
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
UserForm userForm = (UserForm)form;
ActionErrors errors = new ActionErrors(); //从struts1.2开始不推荐使用了
ActionMessages messages = new ActionMessages();//从struts1.2开始,不管错误还是提示信息,推荐统一使用这个
messages.add("error2", new ActionMessage("login.error.error2"));//ActionMessage从资源文件中获取数据
//struts1.1中使用 不正常,在struts1.2中没问题
messages.add("error3", new ActionMessage("数据采集失败...", false));
ActionMessages messages2 = new ActionMessages();
messages2.add("error3", new ActionMessage("数据采集失败2222...", false));
this.addMessages(request, messages);
this.addMessages(request, messages2);//就像message2与message合并了
return mapping.findForward("error");
}
}
b.在src目录下存放资源文件ErrorDescription.properties, 内容如下:
login.error.error2=我是徐艳荣
c.JSP代码:
<html:messages id="message">
<bean:write name="message"/>
</html:messages>
d.测试结果:我是徐艳荣 数据采集失败... 数据采集失败2222...