Estoy intentando guardar las sesiones en Set allSession , pero el método getOpenSessions() crea una matriz vacía. Mi código se parece a -
@OnOpen public void onOpen(Session session){ System.out.println(session.getId() + " has opened a connection"); System.out.println(" Session: "+session.getOpenSessions()); try { session.getBasicRemote().sendText("Connection Established"); } catch (IOException ex) { ex.printStackTrace(); } }Entonces, me está dando un resultado:
1 ha abierto una conexión
Sesión []
¿Alguien puede sugerir cuál es el problema exacto aquí?
Lo siento por la respuesta tardía. El error fue Tomcat versión 8.0. Tomcat 7 es más estable. Estoy usando esto desde hace 3,4 meses, pero se acerca un problema relacionado con la sesión. Espero que esta información te ayude.
Tengo el mismo problema... pero cuando utilicé el método en el método de anotación @onMessage... funciona bien... el conjunto muestra los elementos...
¡Esto funcionó!
@OnMessage public String echo(String msg) throws IOException { Set<Session> set1 = wsSession.getOpenSessions(); System.out.println("set: "+set1); Iterator<Session> iter = set1.iterator(); while(iter.hasNext()) { System.out.println("entered inside while"); } }