2016-11-24 7 views
0

Мне нужно получить список всех активных сеансов, чтобы я мог управлять ими. В основном мне нужно управлять всеми зарегистрированными пользователями в приложении. Использования HttpServletRequest REQ я могу получить текущий сеанс, но должен получить все сеансыПолучить все активные HttpSession в RESTEasy implementationaion

Что-то вроде этого:

 public EmployeeTO getEmployeeById(int id, HttpServletRequest req) { 
     EmployeeTO employeeTO = null; 
     try{ 

      HttpSession session = req.getSession(); 
      HttpSessionContext httpSessionContext = session.getSessionContext(); 


     }catch(Exception e){ 
      e.printStackTrace(); 
     } 
     return employeeTO; 
    } 

Am использование RESTful реализации с JASS для Логина

ответ

1

У меня есть экран, на котором отображается список всех активных пользователей. Если я проверил один пользователь и нажмите закрыть сеанс. Мне нужно прекратить сеанс пользователей. Для этого мне нужно иметь доступ к сеансам.

Использования HttpServletRequest, вы сможете получить только текущий запрос (в пользователь) session объекта. Но если вы хотите, чтобы отслеживать все session объекты, вы можете сделать это путем реализации HttpSessionListener, как показано ниже:

public class MyProjectSessionListenerAndInvalidator 
           implements HttpSessionListener { 

    private static Map<String,Session> sessions = new HashMap<>(); 

     @Override 
     public void sessionCreated(HttpSessionEvent event) { 
      //add your code here, 
      //this will be invoked whenever there is a new session object created 
      //Get the newly created session 
      Session session = event.getSession(); 
      //get userId or unique field from session 
      sessions.put(userId, session); 
     } 

     @Override 
     public void sessionDestroyed(HttpSessionEvent event) { 
     //add your code here 
     //this will be invoked whenever there is a new session object removed 

      //Get the removed session 
      Session session = event.getSession(); 
      //get userId or unique field from session 
      sessions.remove(userId); 
     } 

     public R getSessions() { 
     //add code here 
     } 

     public void invalidateSession(String userId) { 
     //add code here 
     } 
} 

N.B .: Я рекомендую использовать getSessions() и invalidateSession()тщательно.

+0

У меня есть экран, на котором отображается список всех активных пользователей. Если я проверю одного пользователя и нажмите закрыть сеанс. Мне нужно прекратить сеанс пользователей. Для этого мне нужно иметь доступ к сеансам – Ashish451

 Смежные вопросы

  • Нет связанных вопросов^_^