【发布时间】:2015-11-23 05:07:09
【问题描述】:
我自己建了一个Project for practicing and learning and testing,代码没有错误,但是无论我怎么努力,我都无法弄清楚testGet.java中GET方法的URI路径,那就是一个测试页面,我总是得到404错误,我已经在谷歌搜索了几个小时,但我没有找到答案。我的代码在这里 https://github.com/abcdef123ghi/jerseytest
这是我的 web.xml
<!DOCTYPE web-app
PUBLIC '-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN'
'http://java.sun.com/dtd/web-app_2_3.dtd'>
<web-app>
<display-name>Restful Web Application</display-name>
<servlet>
<servlet-name>Restful Web Application</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>service</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Restful Web Application</servlet-name>
<url-pattern>/webapi/*</url-pattern>
</servlet-mapping>
</web-app>
这是我的 testGET.java
package service;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
@Path("/test")
public class testGet {
@GET
//@Path("/test")
@Produces({MediaType.APPLICATION_JSON+ ";charset=utf-8"})
public String Hello()
{
return "Test";
}
}
问题
有没有人用过相关的东西? 我做错了什么? 我认为这可能是一个错误,当使用多个@Path、一个在类中和另一个在方法中时。 任何提示表示赞赏!
问候
【问题讨论】:
-
您使用哪个网址返回 404 状态?
-
感谢回复我
-
您的 web.xml 配置错误。您使用的是 Jersey 1.x 配置,但您使用的是 Jersey 2.x jars。查看the documentation的正确配置
-
检查您的服务器日志(在服务器启动时)是否有错误。可能是,您的应用程序部署失败。