<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 閱讀(1774) 評論(0)  編輯  收藏 所屬分類: Struts
    主站蜘蛛池模板: 中文国产成人精品久久亚洲精品AⅤ无码精品 | 中文字幕在线视频免费观看| 在线观着免费观看国产黄| 亚洲三级在线观看| 免费无码看av的网站| 久久无码av亚洲精品色午夜| 在线观看免费为成年视频| 国产三级免费电影| 国产综合激情在线亚洲第一页| 韩国二级毛片免费播放| 亚洲AV无码专区国产乱码不卡 | 成人免费男女视频网站慢动作| 狠狠色伊人亚洲综合网站色| 成全影视免费观看大全二| 亚洲av永久无码天堂网| 亚洲成a人片在线观看老师| 皇色在线免费视频| 亚洲AV日韩AV永久无码绿巨人| 69精品免费视频| 亚洲午夜福利在线观看| 国产在线精品免费aaa片| 亚洲视频一区在线观看| 国产精品美女午夜爽爽爽免费| 亚洲AV无码第一区二区三区| 免费观看四虎精品成人| 国产亚洲视频在线播放| 亚洲欧洲免费视频| 亚洲国产成人久久精品软件| 免费在线一级毛片| 无码精品一区二区三区免费视频| 2017亚洲男人天堂一| 免费大片黄手机在线观看| 久久免费精品一区二区| 亚洲中文无码av永久| 亚洲第一页综合图片自拍| 性无码免费一区二区三区在线| 日韩亚洲国产综合高清| 国产亚洲精品福利在线无卡一| 6080午夜一级毛片免费看| 国产亚洲视频在线观看网址| 亚洲AV无码一区东京热久久|