3.2.5. JAX-RS 和 RESTEasy 的修改
3.2.5.1. 配置 JAX-RS 和 RESTEasy 的修改
JBoss EAP 6 会自动设置 RESTEasy,所以您不需要自己来配置。因此,您应该从
web.xml
文件里删除所有现有的 RESTEasy 配置并替换为下列三个选项之一:
- 子类化
javax.ws.rs.core.Application
并使用@ApplicationPath
注解。这是最简单的选项且不要求任何 XML 配置。在您的应用程序里简单地将javax.ws.rs.core.Application
作为子类并用您想将 JAX-RS 类可用的路径来进行注解。例如:@ApplicationPath("/mypath") public class MyApplication extends Application { }
在上面的例子里,JAX-RS 资源位于路径/MY_WEB_APP_CONTEXT/mypath/
。注意
注意,路径应该指定为/mypath
而不是/mypath/*
。 - 将
javax.ws.rs.core.Application
作为子类并使用web.xml
文件来设立 JAX-RS 映射。如果您想使用@ApplicationPath
注解,您仍需要将javax.ws.rs.core.Application
子类化。然后您可以在web.xml
文件里设置 JAX-RS 映射。例如:public class MyApplication extends Application { }
<servlet-mapping> <servlet-name>com.acme.MyApplication</servlet-name> <url-pattern>/hello/*</url-pattern> </servlet-mapping>
在上面的例子里,JAX-RS 资源位于路径/MY_WEB_APP_CONTEXT/hello
。注意
您也可以使用这个方法来覆盖用@ApplicationPath
注解设置的应用程序路径。 - 修改
web.xml
文件。如果您不想将Application
子类化,您可以像下面这样在web.xml
文件里设置 JAX-RS 映射:<servlet-mapping> <servlet-name>javax.ws.rs.core.Application</servlet-name> <url-pattern>/hello/*</url-pattern> </servlet-mapping>
在上面的例子里,JAX-RS 资源位于路径/MY_WEB_APP_CONTEXT/hello
。注意
当您选择这个选项时,您只需要添加映射。您不需要添加对应的 servlet。服务器将负责自动添加对应的 servlet。