我正在尝试使用resteasy创建一个示例休息服务。下面是我的java类
@Path("/message")
public class MessageRestService {
@GET
@Path("/{param}")
public Response getMessage(@PathParam("param")String msg){
String result = "Hello World "+msg;
return Response.status(200).entity(result).build();
}
}
我的web.xml如下所示
<web-app id="WebApp_ID" version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<context-param>
<param-name>resteasy.scan</param-name>
<param-value>true</param-value>
</context-param>
<!-- this need same with resteasy servlet url-pattern -->
<context-param>
<param-name>resteasy.servlet.mapping.prefix</param-name>
<param-value>/rest</param-value>
</context-param>
<listener>
<listener-class>
org.jboss.resteasy.plugins.server.servlet.ResteasyBootstrap
</listener-class>
</listener>
<servlet>
<servlet-name>resteasy-servlet</servlet-name>
<servlet-class>
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>resteasy-servlet</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>
index.html
</welcome-file>
</welcome-file-list>
</web-app>
我正在使用的其他简易版本是3.0.12。当我点击下面的网址时
http://localhost:8080/RestPathAnnotationExample/rest/message/test
找不到此localhost页面 未找到网址的网页:http://localhost:8080/RestPathAnnotationExample/rest/message/test
我正在tomcat 8上部署。
请帮帮我
答案 0 :(得分:0)
您同时指定了resteasy.servlet.mapping.prefix=/rest
和
<servlet-mapping>
<servlet-name>resteasy-servlet</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
将使用指定路径上的映射。它应该工作,除非您给出正确的配置。您可以详细了解installation and configuration。
默认情况下,RESTeasy被配置为扫描JAX-RS注释类的这些目录中的jar和类,并在系统中部署和注册它们。