使用validate.xml时,让结果只返回一条

Posted on 2007-11-16 12:51 久城 阅读(384) 评论(0)  编辑  收藏 所属分类: JavaTest
最近被问到一个问题,在使用org.apache.struts.validator.ValidatorActionForm的时候,自己写的actionForm直接继承了ValidatorActionForm,这样返回的ActionErrors就就会有很多条,如果不做处理的话,页面上会显示的很乱。于是找到了前一阵子的解决办法。

在自己的actionForm里,重写validate方法,如下:
public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) {
    
// 执行validate.xml,取得结果
    ActionErrors errors = super.validate(mapping, request);
    ActionMessage message 
= null;
    
// 取得第一个error
    Iterator it = errors.get();
    
if (it.hasNext()) {
        message 
= (ActionMessage) it.next();
    }

    
// 创建新error对象集
    ActionErrors messages = new ActionErrors();
    
// 添加
    messages.add(org.apache.struts.action.ActionMessages.GLOBAL_MESSAGE,message);
    
// 返回
    return messages;
}



欢迎来访!^.^!
本BLOG仅用于个人学习交流!
目的在于记录个人成长.
所有文字均属于个人理解.
如有错误,望多多指教!不胜感激!


只有注册用户登录后才能发表评论。


网站导航:
 

Copyright © 久城