我正在尝试将 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。
有没有人了解通过 Tyrus 在 Tomcat 8 上成功发布 websocket 端点所需的步骤?