【发布时间】:2015-06-27 08:51:39
【问题描述】:
我有一个在 Grizzly 实例上运行的 Jersey JAX-RS 应用程序:
public class Application {
public static final String BASE_URI = "http://127.0.0.1:8080/rest";
public static void main(String[] args) throws IOException {
ResourceConfig rc = new ResourceConfig().packages("my.package.rest");
HttpServer server = GrizzlyHttpServerFactory.createHttpServer(URI.create(BASE_URI), rc);
System.out.println("Server started, press any key to stop.");
System.in.read();
server.shutdownNow();
}
}
my.package.rest 内部有 JAX-RS 注释资源。我想在同一服务器实例上使用 Tyrus 添加 websocket 注释(@ServerEndpoint、@OnOpen、@OnMessage 等)资源(比如在“http://127.0.0.1:8080/websocket”中),但我能找到的所有文档展示了如何使用 Tyrus + Grizzly 容器启动独立的 websocket 服务器,而不是与 Jersey 结合使用。我正在寻找类似的东西:
server.getServerConfiguration().addHttpHandler(new SomeTyrusHttpHandler("/websocket"));
但我找不到与SomeTyrusHttpHandler 类似的内容。如何将 Jersey 和 Tyrus 组合在一个 Grizzly 服务器中?
【问题讨论】:
标签: websocket jersey jax-rs grizzly tyrus