<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
    主站蜘蛛池模板: 黄页免费在线观看| 日本免费网站观看| 精品国产亚洲男女在线线电影| 亚洲精品视频在线观看免费 | 亚洲欧美成aⅴ人在线观看| 水蜜桃视频在线观看免费播放高清| 免费看美女让人桶尿口| 亚洲欧洲免费视频| 亚洲AV无码成H人在线观看 | 久久亚洲精品国产精品黑人| 亚洲成人一级电影| 中国国语毛片免费观看视频| 国产免费小视频在线观看| 亚洲第一页中文字幕| 韩日电影在线播放免费版| 四虎影视永久免费观看地址| 2020年亚洲天天爽天天噜| 免费国产黄网站在线观看可以下载| 亚洲一区日韩高清中文字幕亚洲 | 久久久久亚洲av毛片大| 亚洲gay片在线gv网站| 可以免费看黄的网站| 亚洲欧洲第一a在线观看| 国产免费一级高清淫曰本片| 国产男女猛烈无遮挡免费视频| 456亚洲人成在线播放网站| 亚洲一区二区免费视频| 久久精品亚洲一区二区| 久久国产一片免费观看| 亚洲天堂在线视频| 男女污污污超污视频免费在线看| 青青青青青青久久久免费观看| 亚洲AV成人噜噜无码网站| 曰批视频免费40分钟试看天天 | 免费无码又爽又刺激网站直播| 亚洲伊人久久成综合人影院| 特黄特色大片免费| 国产在线观看免费视频播放器| 亚洲精品久久无码| 四虎www成人影院免费观看| 亚洲综合色丁香婷婷六月图片|