【发布时间】:2015-07-28 20:46:21
【问题描述】:
我有一个 Jersey / Spring REST servlet。我正在尝试使用 URL 版本控制机制来拥有同一资源的 2 个版本。 解决这个问题的最佳方法是什么?
这是我的 web.xml 我正在尝试加载 2 个 jersey servlet
<servlet>
<servlet-name>REST_V1</servlet-name>
<servlet-class>com.sun.jersey.spi.spring.container.servlet.SpringServlet
</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>com.comp.resource.v1</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>REST_V1</servlet-name>
<url-pattern>/v1/*</url-pattern>
</servlet-mapping>
这是 V2 映射
<servlet>
<servlet-name>REST_V2</servlet-name>
<servlet-class>com.sun.jersey.spi.spring.container.servlet.SpringServlet
</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>com.comp.resource.v2</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>REST_V2</servlet-name>
<url-pattern>/v2/*</url-pattern>
</servlet-mapping>
我已经定义了 2 个 spring 组件,在它们各自的包中具有相同的资源路径
package com.comp.resource.v1;
@Controller
@Path("/user")
public class User_V1 {
}
对于 V2
package com.comp.resource.v2;
@Controller
@Path("/user")
public class User_V2 {
}
我看到资源 /user 的 URI 模板冲突错误 有没有更好的方法来解决这个问题?任何帮助将不胜感激
【问题讨论】: