Struts 1.3.8 Action实现类中消息的输出及JSP页面中消息标签的使用总结
(1) Action中保存消息及错误的简单实现:
……
//此处是ActionMessages是带’s’的类名
ActionMessages messages = new ActionMessages();
//向messages添加一个消息对象,并设定property为“sucess”
messages.add(“sucess”, new ActionMessage(“source.key”));
//将消息集合保存到request中,并以“org.apache.struts.action.ACTION_MESSAGE”为关键字;此方法可在下面看到Action类中实现的源代码
saveMessages(request,messages);
//将消息集合保存到request中,并以“org.apache.struts.action.ERROR”为关键字;此方法可在下面看到Action类中实现的源代码
saveErrors(request,messages);
……
(2) Struts 1.3.8中的Action中保存消息和错误的源代码如下:
protected void addMessages(HttpServletRequest request, ActionMessages messages)
{
if (messages == null)
return;
ActionMessages requestMessages = (ActionMessages)request.getAttribute("org.apache.struts.action.ACTION_MESSAGE");
if (requestMessages == null)
requestMessages = new ActionMessages();
requestMessages.add(messages);
if (requestMessages.isEmpty())
{
request.removeAttribute("org.apache.struts.action.ACTION_MESSAGE");
return;
} else
{
request.setAttribute("org.apache.struts.action.ACTION_MESSAGE", requestMessages);
return;
}
}
protected void addErrors(HttpServletRequest request, ActionMessages errors)
{
if (errors == null)
return;
ActionMessages requestErrors = (ActionMessages)request.getAttribute("org.apache.struts.action.ERROR");
if (requestErrors == null)
requestErrors = new ActionMessages();
requestErrors.add(errors);
if (requestErrors.isEmpty())
{
request.removeAttribute("org.apache.struts.action.ERROR");
return;
} else
{
request.setAttribute("org.apache.struts.action.ERROR", requestErrors);
return;
}
}
(3) JSP页面中用和标签输出:
……
……
MessagesTag的实现类构造如下:
public MessagesTag()
{
iterator = null;
processed = false;
id = null;
bundle = null;
locale = "org.apache.struts.action.LOCALE";
name = "org.apache.struts.action.ERROR";
property = null;
header = null;
footer = null;
message = null;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.