signouthandler.java

来自「《Java网络程序设计.rar》包括三个网络程序的源代码。」· Java 代码 · 共 59 行

JAVA
59
字号
/* */package org.impact.stars.control.web.handlers;import java.util.HashMap;import java.util.ArrayList;import java.util.Enumeration;import java.util.Locale;import javax.servlet.http.HttpSession;import javax.ejb.RemoveException;import org.impact.stars.control.event.StarsEvent;import org.impact.stars.control.exceptions.StarsEventException;import org.impact.stars.control.event.SignoutEvent;import javax.servlet.http.HttpServletRequest;import org.impact.stars.util.Debug;import org.impact.stars.control.web.ModelManager;import org.impact.stars.util.WebKeys;import org.impact.stars.util.JSPUtil;/** * SignoutHandler * This class removes the UserControllerEJB and destroys * the current HttpSession. **/public class SignoutHandler extends RequestHandlerSupport {    public StarsEvent processRequest(HttpServletRequest request) throws StarsEventException{        Debug.println("Creating Signout Event");        return new SignoutEvent();    }    public void doEnd(HttpServletRequest request) {        ModelManager mm = (ModelManager)request.getSession().getAttribute(WebKeys.ModelManagerKey);        Debug.println("Signout doEnd");        // get locale so the log off message can be in the correct language        String language = mm.getProfileMgrModel().getExplicitInformation().getLangPref();        Locale locale = JSPUtil.getLocaleFromLanguage(language);        try {        //remove the UserControllerEJB         mm.getURCEJB().remove();        } catch (RemoveException rem) {            Debug.println("SignoutHandler error removing UserController: " + rem);        }        request.getSession().invalidate();        // get new session and put in a new gui controller        HttpSession validSession = request.getSession(true);        // put the previous language in the session so the proper signout message is displayed        request.getSession().setAttribute(WebKeys.LanguageKey, locale);        mm = new ModelManager();        request.getSession().setAttribute(WebKeys.ModelManagerKey, mm);        mm.init(context, validSession);        request.getSession().setAttribute(WebKeys.ModelManagerKey, mm);    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?