Session 使用Tomcat编程websocket时,如何在函数createWebSocketBind()中获取会话

Session 使用Tomcat编程websocket时,如何在函数createWebSocketBind()中获取会话,session,tomcat,websocket,Session,Tomcat,Websocket,众所周知,函数createWebSocketInbound(String Subtocol,HttpServletRequest)有2个参数 但当我使用此函数时,我无法使用从参数“request”登录时输入的用户信息获取会话。相反,当我使用request.getSession()时,我会得到一个新会话,其中没有任何内容。。。如何在请求中获取用户登录信息,或者如何将登录信息传递到此函数中 我的代码: @WebServlet(urlPatterns = { "/websocket"}) public

众所周知,函数createWebSocketInbound(String Subtocol,HttpServletRequest)有2个参数

但当我使用此函数时,我无法使用从参数“request”登录时输入的用户信息获取会话。相反,当我使用request.getSession()时,我会得到一个新会话,其中没有任何内容。。。如何在请求中获取用户登录信息,或者如何将登录信息传递到此函数中

我的代码:

@WebServlet(urlPatterns = { "/websocket"})
public class WebSocketWebSocketServlet extends WebSocketServlet {

private static final long serialVersionUID = 1L;

private AdminBean chatter;  //Login information

public void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    Object obj = request.getAttribute("admin");  //obj turns out to be null ...
    super.doGet(request, response);
}

@Override
protected StreamInbound createWebSocketInbound(String subProtocol,HttpServletRequest request) {
    System.out.println("Create a new Instance of WebSocketServlet");
    HttpSession session = request.getSession();
    this.chatter = (AdminBean) session.getAttribute("LoginUser"); //chatter turns out to be null ...
    Object obj = request.getAttribute("admin");  //obj turns out to be null ...
    return new WebSocketMessageInbound(chatter);
}
}