我正在尝试将 Tyrus 部署到 Tomcat 8 容器,但失败了。根据文档,我应该能够部署一个包含我的类和支持 Tyrus 类/依赖项的 WAR,并且所有用 @ServerEndpoint 注释的类都应该在 WAR 中找到并部署为 websocket 端点。这条指令让我有点吃惊,因为我没有在部署描述符中定义任何类型的过滤器,但决定我必须以某种方式依赖于 Tomcat 8 中 JSR 356 支持的一些未知魔法。事实证明,没有如此神奇。注意:我使用的是 Tomcat 8,因为我的理解是它支持 JSR 356 websocket 标准。另外,我的 JDK 是最新的 Java 7 版本。
我花了一些时间对此进行研究,发现人们通过从命令行将服务器实例 (org.glassfish.tyrus.server.Server) 作为 Java 应用程序运行,成功地使用 Tyrus 发布了 websocket 端点.我试过这个并且有效。但是,我无法在 Tomcat 上成功部署 WAR。
有没有人了解在 Tomcat 8 上通过 Tyrus 成功发布 websocket 端点所需的步骤?
最佳答案
Apache Tomcat 7.0 及更高版本(以及 Eclipse Jetty 9.1)内置了对 JSR-356(又名 javax.websocket
)的支持。
无需在大多数 JEE7 容器上使用 Tyrus 兼容层。
只需跳过整个 Tyrus 配置问题并使用公开 javax.websocket
支持的内置功能。</p>
关于java - 如何将 Tyrus(JSR 356 实现)部署到 Web 容器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20646663/