我正在尝试开发一个基本的RESTFULL应用程序,我找到了一些教程,但我不知道发生了什么,因为一切看起来都正确。我正在使用maven tomcat插件启动应用程序(如果它有帮助)。
这是web.xml和控制器。
<servlet>
<servlet-name>jersey-serlvet</servlet-name>
<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>jersey.config.server.provider.packages</param-name>
<param-value>
com.servicios.ws.controller
</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>jersey-serlvet</servlet-name>
<url-pattern>/ws/*</url-pattern>
</servlet-mapping>
和控制器
@Path("/ws/test")
public class UsuarioController {
@GET
@Path("/login")
public final String findUsuarioById() {
return "TEST OK";
}
}
最后,这里有pom版本
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
</plugin>
<dependency>
<groupId>org.glassfish.jersey.containers</groupId>
<artifactId>jersey-container-servlet</artifactId>
<version>2.25</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-json-jackson</artifactId>
<version>2.25</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.ext</groupId>
<artifactId>jersey-spring3</artifactId>
<version>2.25</version>
</dependency>
它应该可以工作,但是当我尝试访问/ ws / test / login时,我会得到404.
提前致谢
答案 0 :(得分:0)
将@Path("/ws/test")
更改为@Path("/test")
。
ws
<url-pattern>/ws/*</url-pattern>
获得前置,因此在当前状态下,您需要访问/ws/ws/test/login