夢幻之旅

          DEBUG - 天道酬勤

             :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            671 隨筆 :: 6 文章 :: 256 評論 :: 0 Trackbacks
          package org.roadway.wisp.zd.util;

          import org.apache.log4j.Logger;

          import com.opensymphony.xwork2.ActionInvocation;
          import com.opensymphony.xwork2.interceptor.AbstractInterceptor;

          /**
           * 
          @author Huyvanpull
           * 
           
          */
          @SuppressWarnings(
          "serial")
          public class ExceptionInterceptor extends AbstractInterceptor
          {
              
          private Logger logger = Logger.getLogger(ExceptionInterceptor.class);
              
              
          private String interceptorName;
              
              @Override
              
          public String intercept(ActionInvocation invocation) throws Exception
              {
                  
          this.logger.debug("進入" + this.getInterceptorName());
                  String result 
          = null;
                  
          try
                  {
                      result 
          = invocation.invoke();
                  }
                  
          catch (Exception exception)
                  {
                      
          this.logger.error(this.getExceptionInfo(exception));
                      
          throw exception;
                  }
                  
          return result;
              }
              
              
          private String getExceptionInfo(Exception exception)
              {
                  StringBuffer bExceptionInfo 
          = new StringBuffer();
                  bExceptionInfo.append(exception.toString());
                  bExceptionInfo.append(
          "\n\t");
                  
                  StackTraceElement[] stackTraceElements 
          = exception.getStackTrace();
                  
          for (int i = 0; i < stackTraceElements.length; i++)
                  {
                      bExceptionInfo.append(
          "[" + this.getInterceptorName() + ""
                              
          + stackTraceElements[i].toString() + "\n\t");
                  }
                  
          return bExceptionInfo.toString();
              }
              
              
          public String getInterceptorName()
              {
                  
          return interceptorName;
              }
              
              
          public void setInterceptorName(String interceptorName)
              {
                  
          this.interceptorName = interceptorName;
              }
              
          }
          posted on 2008-10-13 14:29 HUIKK 閱讀(291) 評論(0)  編輯  收藏 所屬分類: Struts
          主站蜘蛛池模板: 奎屯市| 惠东县| 田阳县| 贵溪市| 江安县| 黑水县| 蓝山县| 镇江市| 新泰市| 锡林浩特市| 日照市| 武山县| 遵义县| 论坛| 澄迈县| 新宾| 奉贤区| 隆昌县| 金堂县| 津南区| 新绛县| 阳谷县| 连城县| 清流县| 祁阳县| 浮梁县| 常州市| 卢氏县| 三门县| 宁海县| 淅川县| 乳源| 西畴县| 新干县| 南城县| 岳阳市| 周宁县| 武鸣县| 酒泉市| 茌平县| 夹江县|