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 :

  1. 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 mettre javax.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.
  2. Mettre javax.ws.rs.core.Application en sous-classe et utiliser le fichier web.xml pour mettre en place le mappage de JAX-RS.
    Si vous ne souhaitez pas utiliser l'annotation @ApplicationPath, vous devrez toujours mettre javax.ws.rs.core.Application en sous-classe. Puis, mettrez en place le mappage JAX-RS dans le fichier web.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.
  3. Modifier le fichier web.xml
    Si vous ne souhaitez pas mettre Application en sous-classe, vous pourrez mettre en place le mappage JAX-RS dans le fichier web.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.