<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    夢幻之旅

    DEBUG - 天道酬勤

       :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      671 隨筆 :: 6 文章 :: 256 評論 :: 0 Trackbacks
    異常攔截器:
    package org.roadway.lm.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;
        }
        
    }

    登陸檢查攔截器:
    package org.roadway.lm.util;

    import java.util.Map;

    import org.apache.log4j.Logger;
    import org.roadway.lm.po.UserInfo;
    import org.roadway.lm.user.action.UserInfoAction;

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

    /**
     * 
    @author tom_hui
     * 
     
    */
    @SuppressWarnings(
    "serial")
    public class LoginCheckerInterceptor extends AbstractInterceptor
    {
        
    private String userSessionKey = "userInfo";
        
        
    private String isCheckLogin   = "true";
        
        
    private Logger logger         = Logger
                                              .getLogger(LoginCheckerInterceptor.
    class);
        
        @SuppressWarnings(
    "unchecked")
        
    public String intercept(ActionInvocation actionInvocation) throws Exception
        {
            Object action 
    = actionInvocation.getAction();
            
            
    /** 如果設置攔截器不檢查登陸 */
            
    if ("false".equalsIgnoreCase(isCheckLogin))
            {
                actionInvocation.invoke();
            }
            
    /** 如果是登陸Action,放其通行 */
            
    if (action instanceof UserInfoAction)
            {
                
    this.logger.info("登陸Action:" + UserInfoAction.class.getName());
                
    return actionInvocation.invoke();
            }
            
            
    /** 從session中得到UserInfo的信息 */
            Map session 
    = actionInvocation.getInvocationContext().getSession();
            UserInfo userInfo 
    = (UserInfo) session.get(userSessionKey);
            
            
    /** 如果Session中存在UserInfo對象 */
            
    if (userInfo != null)
            {
                
    this.logger.info("用戶" + userInfo.getUserName() + "("
                        
    + userInfo.getUserId() + ")登陸了.");
                
    return actionInvocation.invoke();
                
            }
            
    /** 如果沒有登陸 */
            
    else
            {
                
    return Action.LOGIN;
            }
        }
        
        
    public String getUserSessionKey()
        {
            
    return userSessionKey;
        }
        
        
    public void setUserSessionKey(String userSessionKey)
        {
            
    this.userSessionKey = userSessionKey;
        }
        
        
    public String getIsCheckLogin()
        {
            
    return isCheckLogin;
        }
        
        
    public void setIsCheckLogin(String isCheckLogin)
        {
            
    this.isCheckLogin = isCheckLogin;
        }
        
    }


    posted on 2008-10-28 09:26 HUIKK 閱讀(1775) 評論(0)  編輯  收藏 所屬分類: Struts
    主站蜘蛛池模板: 18禁美女黄网站色大片免费观看| 久久影视国产亚洲| 无码免费一区二区三区免费播放 | 国产JIZZ中国JIZZ免费看| 亚洲欧洲国产日韩精品| 亚洲精品无码专区2| 毛片免费观看的视频在线| 99久久久国产精品免费牛牛| 国产免费牲交视频免费播放| 黄人成a动漫片免费网站| 亚洲欧洲日产专区| 亚洲avav天堂av在线不卡| 国产中文在线亚洲精品官网| 永久黄网站色视频免费直播| 青青青免费国产在线视频小草| 免费h视频在线观看| 中文字幕永久免费| 免费人成视频在线播放| 亚洲6080yy久久无码产自国产 | 国产精品久久永久免费| 免费视频精品一区二区三区| 香蕉免费一级视频在线观看| 免费精品国自产拍在线播放| 亚洲精品精华液一区二区| 亚洲看片无码在线视频| 亚洲免费闲人蜜桃| 亚洲在成人网在线看| 亚洲黄色三级视频| 亚洲男人天堂影院| 亚洲成人高清在线观看| 亚洲视频在线免费看| 亚洲综合无码一区二区| 久久亚洲美女精品国产精品 | 精品国产免费一区二区三区| 国产精品美女久久久免费| 精品人妻系列无码人妻免费视频| www免费黄色网| 花蝴蝶免费视频在线观看高清版 | 亚洲人成网站色在线入口| 亚洲欧洲久久av| 国产亚洲精品成人AA片新蒲金|