Comment utiliser guice-servlet avec Jersey 2.0?
Est-il un exemple de code montrant comment utiliser guice-servlet avec Jersey 2.0?
- Aucune raison particulière pour laquelle vous souhaitez utiliser guice-servlet? Maillot 2.0 est entièrement intégré avec HK2 l'injection de dépendance de la boîte, qui (comme ce que j'ai vu) est très semblable à Guice DI. Jetez un oeil à stackoverflow.com/questions/16216759/... pour plus d'informations.
- Je n'ai aucune envie d'apprendre encore une autre DI-cadre. HK2 n'est pas aussi mature que Guice la fois la fonctionnalité et la perspective de la communauté.
Vous devez vous connecter pour publier un commentaire.
https://github.com/Squarespace/jersey2-guice semble être le premier véritable Guice intégration pour le Jersey de 2, mais il nécessite la version 2.11+.
NOTE: je n'ai pas testé, mais l'idée est bonne.
Oui, j'ai adapté un exemple et il est disponible ici - https://github.com/piersy/jersey2-guice-example-with-test
J'ai mis à jour l'exemple de code maintenant, son obtenu un test à l'aide de la jetée et l'autre à l'aide de tomcat.
Il y a une page à HK2 officiel sur la correction des guice mise en œuvre: https://javaee.github.io/hk2/guice-bridge.html
Vous devez créer votre Injecteur quelque chose comme ceci:
Et le code de la doc doit être mis à niveau comme:
À l'aide de la dépendance maven à votre pom.xml
https://github.com/phxql/jersey2-guice ne fonctionne pas avec jersey 2.22 et guice 4.0.
C'est un minimum de travail PoC lequel des fils de Jersey 2 et Guice ensemble:
https://github.com/phxql/jersey2-guice
Je l'ai déjà fait dans cet exemple:
https://github.com/jbescos/tododev
Vous devez vous inscrire à la classe https://github.com/jbescos/tododev/blob/master/jersey2-guice/src/main/java/es/tododev/rest/ApplyGuiceContextFilter.java dans votre ResourceConfig, et la guice injecteur lié à un AbstractModule.
C'est le
ResouceConfig
:GWizard comprend un module qui vous donne out-of-the-box intégration entre Jersey2 et Guice. Voici un exemple d'un ensemble complet de JAX-RS service:
Noter que ceci est basé sur la Squarespace jersey2-guice adaptateur, qui peut ne pas fonctionner correctement avec les futures versions de Jersey. GWizard propose également un RESTEasy JAX-RS module, qui est préféré.
Ici est une entrée de blog à propos de ce qui pourrait aider: http://blorn.com/post/107397841765/guice-and-jersey-2-the-easy-way
Pour ceux qui sont intéressés, il y a un échantillon de guice/maillot intégration à https://github.com/mycom-int/jersey-guice-aop.
UriInfo
puis Guice aurez besoin de déléguer à HK2 pour obtenir une instance (mais ne pas être capable de).Voici un exemple d'utilisation de Jetty Embarqué (il doit probablement travailler pour le serveur Jetty trop)
la jetée-jersey-HK2-Guice-réutilisable
Si vous prévoyez d'utiliser Guice pour votre demande, tous les Guice composants injectés dans Jersey besoin d'être déclarée à titre obligatoire dans le Guice config.
Si vous ne voulez pas de déclarer chaque liaison dans Guice de config, il y a un adaptateur ici:
guice-pont-jit-injecteur