3.2.4. Changements JAX-RS et RESTEasy
3.2.4.1. Configurer les changements de JAX-RS and RESTEasy
JBoss Enterprise Application Platform 6 installe RESTEasy automatiquement, donc vous n'avez pas besoin de le configurer vous-même. Vous devez donc supprimer toute la configuration RESTEasy existante de votre fichier
web.xml
et la remplacer par l'une de ces trois options :
- Sous-classe de
javax.ws.rs.core.Application
et utiliser l'annotation@ApplicationPath
.C'est l'option la plus simple qui ne nécessite pas de configuration xml. Il suffit de mettrejavax.ws.rs.core.Application
en sous-classe dans votre application et de l'annoter par le chemin d'accès où vous souhaitez rendre vos classes de JAX-RS disponibles. Par exemple :@ApplicationPath("/mypath") public class MyApplication extends Application { }
Dans l'exemple suivant, les ressources JAX-RS sont disponibles dans/MY_WEB_APP_CONTEXT/mypath/
.Note
Notez que le chemin doit être spécifié/mypath
, et non pas/mypath/*
. Il ne doit pas y avoir de barre oblique, ni d'astérisque. - Mettre
javax.ws.rs.core.Application
en sous-classe et utiliser le fichierweb.xml
pour mettre en place le mappage de JAX-RS.Si vous ne souhaitez pas utiliser l'annotation@ApplicationPath
, vous devrez toujours mettrejavax.ws.rs.core.Application
en sous-classe. Puis, mettrez en place le mappage JAX-RS dans le fichierweb.xml
. Ainsi :public class MyApplication extends Application { }
<servlet-mapping> <servlet-name>com.acme.MyApplication</servlet-name> <url-pattern>/hello/*</url-pattern> </servlet-mapping>
Dans l'exemple ci-dessus, vos ressources JAX-RS sont disponibles dans le chemin/MY_WEB_APP_CONTEXT/hello
.Note
Vous pouvez également utiliser cette approche pour remplacer le chemin d'application qui était mis en place pour l'annotation@ApplicationPath
. - Modifier le fichier
web.xml
Si vous ne souhaitez pas mettreApplication
en sous-classe, vous pourrez mettre en place le mappage JAX-RS dans le fichierweb.xml
comme suit :<servlet-mapping> <servlet-name>javax.ws.rs.core.Application</servlet-name> <url-pattern>/hello/*</url-pattern> </servlet-mapping>
Dans l'exemple ci-dessus, vos ressources JAX-RS sont disponibles dans le chemin/MY_WEB_APP_CONTEXT/hello
.Note
Quand vous choisissez cette option, vous n'avez qu'à ajouter le mappage. Vous n'avez pas besoin d'ajouter le servlet correspondant. Le serveur est responsable d'ajouter le servet correspondant automatiquement.