2010-06-07 5 views
3

Je voudrais utiliser les services RESTful dans une application CDI/JSF2. Je ne suis pas très familier avec JAX-RS mais j'ai lu que son cycle de vie ne joue pas bien avec CDI/JSF2. Est-il possible d'incorporer JAX-RS avec CDI/JSF2 dans une pile JEE6? Si non, existe-t-il des alternatives?CDI/JSF et JAX-RS?

grâce

+0

Une référence sur les problèmes (parce que je ne vois pas ce qu'ils pourraient être)? –

+0

@Pascal Thivent - ne sais pas beaucoup à ce sujet, j'ai trouvé ce lien http://www.mentby.com/paul-sandoz/jax-rs-and-cdi-integration-using-glassfish-v3.html et un article sur resteasy-cdi http://community.jboss.org/wiki/RESTEasy-CDIIntegration – kgrad

+1

J'utilise CDI (pour DI seulement) et JAX-RS - joue très bien (Glasssfish 3.1.2) –

Répondre

6

Vous pouvez utiliser JAX-RS très bien le long du côté une application JSF, ils ne jouent pas si bien ensemble. Par exemple, vous ne pouvez pas utiliser JAX-RS pour que "http://localhost:8080/story/92/" renvoie une page JSF avec une entité Story avec l'ID 92.

Vous pouvez cependant utiliser PrettyFaces pour faire quelque chose de très similaire à ceci. JAX-RS est logique pour les ressources non-JSF.

"http://localhost:8080/story.xml" est parfaitement logique pour JAX-RS.

3

Vous pouvez appeler vos services de repos à partir de vos modèles JSF. Par exemple, vous pouvez exécuter vos services de repos depuis http://localhost:8080/services/ pendant que votre page JSF est renvoyée sur http://localhost:8080/index.xhtml. Vous pouvez ensuite écrire un javascript personnalisé pour appeler vos services de repos à partir de votre page JSF. C'est en fait la pratique générale avec les services REST afin qu'ils puissent être consommés par de nombreuses interfaces utilisateur différentes. JSF n'est peut-être pas le meilleur pour consommer des services REST, mais c'est possible.

Questions connexes