Я пытаюсь настроить WebSocket через SSL с помощью «javax.websocket.server.ServerEndpoint» в контейнере гризли. Однако я не могу найти способ установить свойство SSL для моей конечной точки.Настройка websocket SSL на grizzly
Мой конечной код:
import javax.websocket.OnMessage;
import javax.websocket.OnOpen;
import javax.websocket.Session;
import javax.websocket.server.ServerEndpoint;
@ServerEndpoint(
Value="/ptiWs",
decoders = {ApiMessage.ApiCoder.class},
)
public class WebsocketEndpoint {
private static final Logger LOG = LogManager.getLogger(WebsocketEndpoint.class);
private final ApiVisitorImpl apiVisitor;
public WebsocketEndpoint(){
}
@OnOpen
public void onOpen(Session session){
LOG.info("New connection open : " + session.toString());
}
@OnMessage
public void message(Session session, ApiMessage message){
LOG.info("New message arrive " + message.toString());
}
}
Наконец, я добавляю свою конечную точку в моем случае Grizzly с помощью следующего кода:
Server ptiWebsocket = new Server("localhost", 8025, "/", null, WebsocketEndpoint.class);
ptiWebsocket.start();
Я уже сделал эту работу для GlassFish, и это довольно легко, но здесь я не нахожу пути для продолжения.
И зависимость:
<dependency>
<groupId>javax.websocket</groupId>
<artifactId>javax.websocket-api</artifactId>
<version>1.0</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.glassfish.tyrus</groupId>
<artifactId>tyrus-server</artifactId>
<version>1.7</version>
</dependency>
<dependency>
<groupId>org.glassfish.tyrus</groupId>
<artifactId>tyrus-container-grizzly-server</artifactId>
<version>1.7</version>
</dependency>
Благодаря
Вы уверены, что используете Jetty? Это больше похоже на встроенную контейнерную поддержку гризли, которая поставляется с Tyrus. –
У вас есть право, у Jetty нет отчета по этой проблеме. Это эффективно контейнер гризли. Я отредактировал сообщение – Manticore