struts中消息和错误的显示(转)

在使用struts框架时,系统内自己产生的错误(比如未通过validator时所产生的错误)是可以用<html:errors/>来显示的.但编程者在程序中编码创建的错误是不能用这种方式显示的.下面谈谈后一种错误的显示方式:

1,自定义的错误的显示方式:

在action中写入错误:

ActionMessages messages=new ActionMessages();
messages.add("aError",new ActionMessage("errors.invalid.token"));//"errors.invalid.token"对应着本地资源文件中的key."aError"是为这个错误消息取的名字.
saveErrors(request, messages);//保存为错误.

在jsp中:

<logic:messagesPresent>
<html:messages id="msg0">
<bean:write name="msg0"/> <br/>
</html:messages>
</logic:messagesPresent><!-- 显示错误 -->

其中,<logic:messagesPresent>检测struts的org.apache.struts.action.ActionErrors中是否存在错误.
<html:messages id="msg0">把错误赋给一个在页面范围内的变量.名称任意
<bean:write name="msg0"/>输出"msg0"的值.

2,自定义的消息的显示方式:

在action中写入消息:

ActionMessages messages=new ActionMessages();
messages.add("aMess",new ActionMessage("errors.invalid.token"));
saveMessages(request, messages);//保存为消息.

在jsp中:

<logic:messagesPresent message="true">
<html:messages id="msg0" message="true">
<bean:write name="msg0"/> <br/>
</html:messages>
</logic:messagesPresent><!-- 显示消息 -->

其中,<logic:messagesPresent message="true">检测struts的org.apache.struts.action.ActionMessages中是否存在消息.
<html:messages id="msg0" message="true">把消息赋给一个在页面范围内的变量.

 

如果new ActionMessage时,消息不存在,页面会报错说无法找到名为msg0的bean。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值