jersey rest api服务在localhost tomcat7上运行正常,但是当我尝试在谷歌计算引擎上的tomcat8上部署时,它甚至无法运行,我什至也尝试了tomcat7,但仍然找不到404资源(在localhost tomcat7上运行良好)请帮助我: (
这是我的web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>RestTest</display-name>
<welcome-file-list>
<welcome-file>Hello.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>javax.ws.rs.core.Application</servlet-name>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>javax.ws.rs.core.Application</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
</web-app>
这是我的休息服务测试课程
\
打包com.services;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import com.obj.Resp;
@Path("/say")
public class Test {
@Path("/hello")
@GET
@Produces({MediaType.APPLICATION_JSON})
public static Resp name() {
Resp res=new Resp();
res.setName("name");
res.setPass("pass");
System.out.println("Testing");
return res;
}
@GET
@Produces({ MediaType.TEXT_HTML, MediaType.TEXT_PLAIN })
public static String defaul() {
return "Hello Rest Api";
}
}
最佳答案
上下文路径可能有问题。
本地入口点看起来像http://localhost:8888/rest/yourEntry
通过您的配置
<servlet-mapping>
<servlet-name>javax.ws.rs.core.Application</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
尝试将其更改为:
<servlet-mapping>
<servlet-name>javax.ws.rs.core.Application</servlet-name>
<url-pattern>rest/*</url-pattern>
</servlet-mapping>
希望它能解决您的问题
关于tomcat - Jersey 剩余API在计算引擎tomcat 7上不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48926589/