Buen dìa compañeros del foro.
Estoy haciendo un proyecto con java que trata sobre websockets,
con JAVA EE7 y Glassfish 4.
Tengo todo bien, el html, el JS, y el modelo.
En el modelo hay una clase que se llama MiChat, es esta la clase que defino con el @serverEndpoint
pero en las anotaciones @onOpen, @onClose, @onMessage me devuelve un error de sintaxis, y al comparar la clase con las clases de otros proyectos que se definen de la misma manera, son iguales, realmente no encuentro el error.
esta es la clase
Código Java:
Ver originalimport java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import javax.websocket.EncodeException;
import javax.websocket.Session;
import javax.websocket.server.ServerEndpoint;
import javax.websocket.OnOpen;
import javax.websocket.OnClose;
import javax.websocket.OnMessage;
@ServerEndpoint(value="/chat",
encoders={EncoderMensaje.class},
decoders={DecoderMensaje.class}
)
public class MiChat {
private static final List<Session> conectados=new ArrayList<>();
@onOpen//tiene el subrallado de error
public void inicio(Session sesion){
conectados.add(sesion);
}
@onClose//tiene el subrallado de error
public void salir(Session sesion){
conectados.remove(sesion);
}
@onMessage//tiene el subrallado de error
public void mensaje
(Mensaje mensaje
) throws IOException, EncodeException
{ for(Session sesion:conectados){
sesion.getBasicRemote().sendObject(mensaje);
}
}
}
La clase tiene las respectivas librerias importadas, pero casualmente las librerias
Código Java:
Ver originalimport javax.websocket.OnOpen;
import javax.websocket.OnClose;
import javax.websocket.OnMessage;
tienen el subrallado que indica que nò estan siendo utilizadas.
Cambiè el nombre del proyecto por que pensè que estaba muy largo pero no, Intentè haciendo un proyecto nuevo e hize exactamente lo mismo pero nò copiando y pegando, sinò tipeando, pero tampoco. Realmente no se que mas hacerle, por cualquier lado que le miro, a mi punto de vista no tiene errores sintàcticos.
¿A que se debe el error en las anotaciones?.
De antemano muchas gracias por sus aportes.