是否可以阻止执行提供的jar的ServletContainerInitializer。
我想阻止将Glassfish 4.1提供的JerseyServletContainerInitializer.java
作为osgi-bundle(jersey-container-servlet.jar
)执行。
或者我如何使用web {的<absolute-order>
强制加载ResteasyServletInitializer.java
在执行球衣对手之前提供的resteasy-servlet-initializer-3.0.11.Final.jar
?
我不明白如何使用web.xml实现这一目标。
ServletContainerInitializer
状态的规范也是:
在任何一种情况下,必须忽略从绝对排序中排除的Web片段JAR文件的ServletContainerInitializer服务,并且发现这些服务的顺序必须遵循应用程序的类加载委派模型。
因此我尝试使用我的glassfish-web.xml但没有效果。
请指导我这个。
干杯
(p.s。从glassfish / modules /文件夹中删除jersey-container-servlet.jar
“工作”)
答案 0 :(得分:0)
Web片段排序无法正常工作,因为jersey-container-servlet.jar不是真正的Web片段。
但是下面的内容适用于使用Jersey 2的Webogic 12.2。
为您的应用创建课程
package my.app;
public class MyJaxRSApplication extends javax.ws.rs.core.Application {}
使用web.xml中此类的完全限定名称注册Rest Easy Easy servlet
<servlet>
<servlet-name>my.app.MyJaxRSApplication</servlet-name>
<servlet-class>org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher</servlet-class>
</servlet>
这不会阻止执行JerseyServletContainerInitializer,但它不会注册Jersey servlet。