Weblogic 12.2.1.x上的Jersey 1.13 web服务

Weblogic 12.2.1.x上的Jersey 1.13 web服务,jersey,weblogic,weblogic12c,jersey-1.0,Jersey,Weblogic,Weblogic12c,Jersey 1.0,我试图在Weblogic 12.2.1.x上运行一个非常简单的Jersey web服务,但我失败得很惨 在我的web.xml中,我有以下内容 <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLo

我试图在Weblogic 12.2.1.x上运行一个非常简单的Jersey web服务,但我失败得很惨

在我的
web.xml
中,我有以下内容

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
    <display-name>jersey1test</display-name>
    <servlet>
        <servlet-name>ServletAdaptor</servlet-name>
        <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
        <init-param>
            <param-name>com.sun.jersey.config.property.packages</param-name>
            <param-value>com.jersey1test</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>ServletAdaptor</servlet-name>
        <url-pattern>/srv/*</url-pattern>
    </servlet-mapping>
    <session-config>
        <session-timeout>30</session-timeout>
    </session-config>
    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
</web-app>
我的pom中只有1.13项从属关系

<dependency>
    <groupId>com.sun.jersey</groupId>
    <artifactId>jersey-server</artifactId>
    <version>1.13</version>
</dependency>
<dependency>
    <groupId>com.sun.jersey</groupId>
    <artifactId>jersey-servlet</artifactId>
    <version>1.13</version>
</dependency>
<dependency>
    <groupId>com.sun.jersey.contribs</groupId>
    <artifactId>jersey-multipart</artifactId>
    <version>1.13</version>
</dependency>
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>servlet-api</artifactId>
    <version>2.5</version>
</dependency>

泽西岛
我在war部署的weblogic.xml中有以下内容

<wls:container-descriptor>
    <wls:prefer-application-packages>
        <!— jersey-bundle-*.jar->
        <wls:package-name>com.sun.jersey.*</wls:package-name>
        <wls:package-name>com.sun.research.ws.wadl.*</wls:package-name>
        <wls:package-name>com.sun.ws.rs.ext.*</package-name>

        <!— Jackson-*.jar ->
        <wls:package-name>org.codehaus.jackson.*</wls:package-name>

        <!— jettison-*.jar ->
        <wls:package-name>org.codehaus.jettison.*</wls:package-name>

        <!— jsr311*.jar ->
        <wls:package-name>javax.ws.rs.*</wls:package-name>

        <!— asm.jar ->
        <wls:package-name>org.objectweb.asm.*</wls:package-name>
    </wls:prefer-application-packages>
</wls:container-descriptor>

泽西岛*
com.sun.research.ws.wadl*
com.sun.ws.rs.ext*
org.codehaus.jackson*
org.codehaus.jettison*
javax.ws.rs*
org.objectweb.asm*
war部署得很好,但在尝试访问Web服务时,我只收到一个找不到的响应(同样的URI btw在部署到weblogic 12.1.3或Glassfish 3/4时起作用)

我注意到的一件事是,我在服务器日志中看到了以下内容(我看不到任何异常)



在我看来,这似乎表明它忽略了我在
weblogic.xml
中设置的内容。我做错了什么?是否可以让jersey 1 web服务在weblogic 12.2.1.x中工作?

看起来与12.2.1.x存在兼容性问题

您可以选择降级WebLogic版本,或者升级到Jersey 2(顺便问一下,为什么不使用Jersey 2?)


是的,我看到了那篇文章,我不确定它是否是官方不支持的声明。至于为什么Jersey 1是几年前开发的一个web服务,上面只是一个简单的例子,它会给出与实际问题相同的问题。
<wls:container-descriptor>
    <wls:prefer-application-packages>
        <!— jersey-bundle-*.jar->
        <wls:package-name>com.sun.jersey.*</wls:package-name>
        <wls:package-name>com.sun.research.ws.wadl.*</wls:package-name>
        <wls:package-name>com.sun.ws.rs.ext.*</package-name>

        <!— Jackson-*.jar ->
        <wls:package-name>org.codehaus.jackson.*</wls:package-name>

        <!— jettison-*.jar ->
        <wls:package-name>org.codehaus.jettison.*</wls:package-name>

        <!— jsr311*.jar ->
        <wls:package-name>javax.ws.rs.*</wls:package-name>

        <!— asm.jar ->
        <wls:package-name>org.objectweb.asm.*</wls:package-name>
    </wls:prefer-application-packages>
</wls:container-descriptor>
<15-Jul-2016 08:39:55 o'clock BST> <Warning> <JAXRSIntegration> <BEA-2192509> <Changing servlet class from com.sun.jersey.spi.container.servlet.ServletContainer (web.xml) to org.glassfish.jersey.servlet.ServletContainer.> 
<15-Jul-2016 08:39:55 o'clock BST> <Warning> <JAXRSIntegration> <BEA-2192510> <Cannot add Jersey servlet for application class com.sun.jersey.api.core.ResourceConfig because ApplicationPath annotation is not set on it.> 
<15-Jul-2016 08:39:55 o'clock BST> <Warning> <JAXRSIntegration> <BEA-2192510> <Cannot add Jersey servlet for application class com.sun.jersey.api.core.ApplicationAdapter because ApplicationPath annotation is not set on it.> 
<15-Jul-2016 08:39:55 o'clock BST> <Warning> <JAXRSIntegration> <BEA-2192510> <Cannot add Jersey servlet for application class com.sun.jersey.server.impl.application.DeferredResourceConfig because ApplicationPath annotation is not set on it.> 
<15-Jul-2016 08:39:55 o'clock BST> <Warning> <JAXRSIntegration> <BEA-2192510> <Cannot add Jersey servlet for application class com.sun.jersey.api.core.ClassNamesResourceConfig because ApplicationPath annotation is not set on it.> 
<15-Jul-2016 08:39:55 o'clock BST> <Warning> <JAXRSIntegration> <BEA-2192510> <Cannot add Jersey servlet for application class com.sun.jersey.api.core.DefaultResourceConfig because ApplicationPath annotation is not set on it.> 
<15-Jul-2016 08:39:55 o'clock BST> <Warning> <JAXRSIntegration> <BEA-2192510> <Cannot add Jersey servlet for application class com.sun.jersey.api.core.PackagesResourceConfig because ApplicationPath annotation is not set on it.> 
<15-Jul-2016 08:39:55 o'clock BST> <Warning> <JAXRSIntegration> <BEA-2192510> <Cannot add Jersey servlet for application class com.sun.jersey.api.core.servlet.WebAppResourceConfig because ApplicationPath annotation is not set on it.> 
<15-Jul-2016 08:39:55 o'clock BST> <Warning> <JAXRSIntegration> <BEA-2192510> <Cannot add Jersey servlet for application class com.sun.jersey.api.core.ClasspathResourceConfig because ApplicationPath annotation is not set on it.> 
<15-Jul-2016 08:39:55 o'clock BST> <Warning> <JAXRSIntegration> <BEA-2192510> <Cannot add Jersey servlet for application class com.sun.jersey.api.core.ScanningResourceConfig because ApplicationPath annotation is not set on it.>