专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > Ruby/Rails

弹出异常对话框alert('error')-struts

发布时间:2011-06-29 18:19:29 文章来源:www.iduyao.cn 采编人员:星星草
弹出错误对话框alert('error')--struts

唉!很累!就把代码贴出来!希望对初学者有所帮助! 

简要说明:addError方法用于添加要弹出的消息或错误!

                    addMsg方法用于添加消息或错误!

  1. Java代码

    java 代码
    1. package com.dotease.common;   
    2.   
    3. import javax.servlet.http.HttpServletRequest;   
    4.   
    5. import org.apache.struts.Globals;   
    6. import org.apache.struts.action.ActionErrors;   
    7. import org.apache.struts.action.ActionMessage;   
    8. import org.apache.struts.action.Action;   
    9. import org.apache.struts.action.ActionMessages;   
    10. import org.apache.struts.util.MessageResources;   
    11. import java.util.ArrayList;   
    12. /**  
    13.  * @author Administrato 2007-10-9  
    14.  *2007-10-9  
    15.  */  
    16. public class Msg {   
    17.   
    18.     /**  
    19.      * save the error messages! This like Action.saveErrors();   
    20.      * @param request  
    21.      * @param errors  
    22.      */  
    23.     protected  static final void saveErrors(HttpServletRequest request,ActionMessages errors) {   
    24.   
    25.         if ((errors == null) || errors.isEmpty()) {   
    26.             request.removeAttribute(Globals.ERROR_KEY);   
    27.             return;   
    28.         }   
    29.         // Save the error messages we need   
    30.         request.setAttribute(Globals.ERROR_KEY, errors);   
    31.            
    32.     }   
    33.        
    34.     /**  
    35.      * 保存弹出消息到Request,使用默认的key:showError   
    36.      * 此信息在前台设置后,弹出!  
    37.      * 建议: 放在紧挨着的地方!  
    38.      * 适合有错误,就返回! 如果多次调用,会覆盖上次的Errors  
    39.      * @param request    
    40.      * @param ActionMessage      
    41.      *   
    42.      */  
    43. public static final void saveError(HttpServletRequest request,ActionMessage error) {   
    44.            
    45.         MessageResources msgResource = ((MessageResources) request.getAttribute(Globals.MESSAGES_KEY));   
    46.         String msg=msgResource.getMessage(error.getKey());   
    47.         int length=0;   
    48.         if(error.getValues()!=null)   
    49.             length=error.getValues().length;   
    50.         for(int i=0;i
    51.         {   
    52.             msg=msg.replace("{"+i+"}", error.getValues()[i].toString());   
    53.                
    54.         }   
    55.         ActionMessages errors = new ActionMessages();   
    56.         errors.add("showError",new ActionMessage("showError",msg));   
    57.         saveErrors(request,errors);    
    58.     }   
    59.   
    60.     /**  
    61.      * 把ActionMessage对象转化为文本字符串  
    62.      * @param request  
    63.      * @param msg  
    64.      * @return  
    65.      */  
    66. public static final String msgToString(HttpServletRequest request,ActionMessage error)    
    67. {   
    68.     MessageResources msgResource = ((MessageResources) request.getAttribute(Globals.MESSAGES_KEY));   
    69.     String msg=msgResource.getMessage(error.getKey());   
    70.     msg=filterString(msg);   
    71.     int length=0;   
    72.     if(error.getValues()!=null)   
    73.         length=error.getValues().length;   
    74.     for(int i=0;i
    75.     {   
    76.         msg=msg.replace("{"+i+"}", error.getValues()[i].toString());   
    77.            
    78.     }   
    79.     return msg;   
    80. }   
    81.     /**  
    82.      * 返回MessageResources对象,通过它可以获得配置资源  
    83.      * @param request  
    84.      * @return  
    85.      */  
    86. public static final MessageResources getMsgResources(HttpServletRequest request)    
    87. {      
    88.     return ((MessageResources) request.getAttribute(Globals.MESSAGES_KEY));    
    89. }   
    90.   
    91.   
    92.   
    93. protected static final ActionMessages getErrors(HttpServletRequest request)   
    94. {   
    95.     ActionMessages errors = (ActionMessages)request.getAttribute(Globals.ERROR_KEY);   
    96.     if(errors == null)   
    97.         errors = new ActionMessages();   
    98.     return errors;   
    99.        
    100. }   
    101.     /**  
    102.      * 保存弹出消息到Request,使用默认的key:showError   
    103.      * @param request  
    104.      * @param error  
    105.      */  
    106. public static final void addError(HttpServletRequest request,ActionMessage error)   
    107. {   
    108.     ActionMessages errors=getErrors(request);   
    109.     errors.add("showError"new ActionMessage("showError",msgToString(request,error)));   
    110.     saveErrors(request,errors);   
    111. }   
    112.     /**  
    113.      * 保存弹出消息到Request,使用默认的key:showError   
    114.      * @param request  
    115.      * @param key  
    116.      */  
    117. public static final void addError(HttpServletRequest request,String key)   
    118. {   
    119.     ActionMessages errors=getErrors(request);   
    120.     String temp=key;   
    121.     temp=getMsgResources(request).getMessage(key);   
    122.     if(temp!=null)   
    123.         key=temp;   
    124.     errors.add("showError"new ActionMessage("showError",key));   
    125.     saveErrors(request,errors);   
    126. }   
    127. public static final void addMsg(HttpServletRequest request,String key,ActionMessage error)   
    128. {   
    129.     ActionMessages errors=getErrors(request);   
    130.     errors.add(key, error);   
    131.     saveErrors(request,errors);   
    132. }   
    133. public static final void addMsg(HttpServletRequest request,String key,String  value)   
    134. {   
    135.     ActionMessages errors=getErrors(request);   
    136.     errors.add(key, new ActionMessage("showMsg",value));   
    137.     saveErrors(request,errors);   
    138. }   
    139. public static final String filterString(String s)   
    140. {   
    141.     if(s.indexOf("<")==-1)   
    142.         return s;   
    143.     int len=s.length();   
    144.     int ps=s.indexOf("<");   
    145.     int pe=s.indexOf(">");   
    146.     s=s.substring(0, ps)+s.substring(pe+1,s.length());   
    147.     return filterString(s);    
    148. }   
    149. //error.DBError    数据库错误提示
    150. public static final void addError(HttpServletRequest request,Exception e)   
    151. {   
    152.     ActionMessages errors=getErrors(request);   
    153.     String temp=getMsgResources(request).getMessage("error.DBError"); //数据库错误提示  
    154.     errors.add("showError"new ActionMessage("showError",temp+e.getMessage()));   
    155.     saveErrors(request,errors);   
    156.     e.printStackTrace();   
    157. }  
  2. ApplicationResources.properties

              showError= <script language="JavaScript">alert('{0}')</script>


 

 

    3.使用示例:

         Msg.addError(request, "你还没有办理公司××业务!");

         Msg.saveError(request, new ActionMessage("mccc.failmsg"));

         Msg.addError(request, new ActionMessage("mccc.lessmczh"));

         显示所有的:  <html:errors/>


 

        

         显示指定的错误!

<html:errors property="showError"/>

 

 

 

 

    太累!没有详细注释,说明!见谅! 

1 楼 little fish 2008-05-14  
这个太难,太复杂了,我就是想知道在jsp页面中要删除一条记录的时候怎么弹出对话框,应该不用写的这么复杂吧
2 楼 xiao_xgy 2008-09-25  
高手啊,javaEye怎么会有这么多高手!
3 楼 wangjian3q 2008-11-02  
为什么是乱码呀!
  请求帮助。
4 楼 anny5 2008-11-24  
谢了谢了谢了谢了
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: