Ответ 1
Зависит от того, что вы подразумеваете под параметром инициализации. Вы можете сделать что-то вроде этого:
@ServerEndpoint(value = "/websocket/{clientId}")
public class Service {
private volatile String clientId;
@OnOpen
public void init(@PathParam("clientId") String clientId, Session session) throws IOException {
this.clientId = clientId;
}
}
Затем вы используете следующий URL для доступа к своей конечной точке: ws://host/contextPath/websocket/[clientId]
.
если вы используете параметры запроса, см. Session#getQueryString()
.