Java EE 6 提供了一种在启动时激活 JAX-RS 应用程序的方法。
问题是我(当然我们中的许多人仍在)使用不符合 Java EE/Servlet 3.0 的 Web 服务器,因此如果我们尝试在 JAX-RS 应用程序上使用启动时加载 servlet 映射, Web 服务器(至少 jetty 是这样)会崩溃
"class is not a servlet"
因此拒绝加载应用程序。
问题的要点是 - 要加载上下文解析器,唯一可以完成的方法是通过 jax-rs Application 子类。
激活 Application 子类的方法在 Jetty 和 Tomcat/JBoss 上应该以类似的方式工作,因为我使用 jetty 进行开发(由于 GWT - 还有什么?)和 Tomcat/JBoss 进行生产。我希望避免为 jetty 和 tomcat 编写不同的加载器。
最佳答案
jax-rs 提供程序(如 cxf 或 resteasy)中已经存在启动 servlet 和上下文监听器,请仔细阅读文档
关于java - 如何在非 servlet 3.0/非 Java EE 6 中激活 jax-rs ContextResolver 和 Application,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11232209/