jersey 2.3.1和spring集成兼容性问题

时间:2013-10-06 07:29:25

标签: jersey-2.0

我正在尝试创建使用平针织物和弹簧的宁静服务项目设置。我最初下载了jersey1.8依赖的罐子,我也得到了jersey-spring-1.8,我使用com.sun.jersey.spi.spring.container.servlet.SpringServlet作为jersey servlet,这个设置运行良好,没有任何问题。

现在我被要求使用jersey2.3.​​1的最新泽西版,所以我下载了jersey2.3.​​1依赖的罐子(如jersey-container-servlet-core-2.3.1,jersey-container-servlet-2.3.1等) )。现在的问题是jersey-spring将有com.sun.jersey.spi.spring.container.servlet.SpringServlet,我从maven资源库下载jar,即jersey-spring3-2.3.1.jar,但它不包含上面的那个SpringServlet.So任何人都可以告诉我相应的jersey-spring jar是什么,或者我错过了什么。

注意我试图使用与jersey-spring-1.8相关的jersey2.3.​​1相关的罐子,但现在我有例外说com.sun.jersey.spi.container.servlet.ServletContainer丢失了。所以有一些jar兼容的问题。

谁能告诉我如何进行jersey2.3.​​1和spring整合?

3 个答案:

答案 0 :(得分:8)

com.sun.jersey.spi.spring.container.servlet.SpringServlet 现已成为 org.glassfish.jersey.servlet.ServletContainer

有关Jersey2和Spring 3集成的完整说明,请参阅此文http://www.codingpedia.org/ama/restful-web-services-example-in-java-with-jersey-spring-and-mybatis/

答案 1 :(得分:3)

在jersey 2.x和spring集成中,我们无法定义spring bean中的资源和提供程序,就像我们在jersey 1.x和spring集成中所做的那样。 看下面的链接。

https://java.net/jira/browse/JERSEY-1957 https://jersey.java.net/documentation/latest/spring.html

所以在球衣2.x中没有com.sun.jersey.spi.spring.container.servlet.SpringServlet

答案 2 :(得分:1)

使用Jersey 2.x,org.glassfish.jersey.servlet.ServletContainer将是要使用的servlet类。

除了javax.ws.rs.Application作为servlet的init-param选项之外,还可以将jersey.config.server.provider.packages作为其参数。

以下是代码段,它在web.xml中的表现方式:

<!-- Jersey Servlet -->
<servlet>
    <servlet-name>jersey-servlet</servlet-name>
    <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
    <!-- Register resources and providers -->
    <init-param>
        <param-name>jersey.config.server.provider.packages</param-name>
        <param-value>com.jersey.series.spring.integration.service</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>

在Spring applicationContext.xml中包含:

<!-- scans packages to find and register beans within the application context -->
<context:component-scan base-package="com.jersey.series.spring.integration" />

希望这会有所帮助。