Praktische Hinweise zur Verwendung von Jersey und Guice für einen RESTful-Service

Von dem, was ich online finden kann, stagniert der Stand der Technik für die Integration von Guice + Jersey seit 2008, als sich beide Teams in einer Sackgasse befanden. Der Kern des Problems ist, dass JAX-RS-Annotationen Feld- und Methodeninjektionen durchführen und dies nicht gut mit Guices eigener Abhängigkeitsinjektion zusammenpasst.

Ein paar Beispiele, die ich gefunden habe, gehen nicht weit genug:

Iqbalyusufs Beitrag aufJersey + Guice auf Google App Engine Java leidet unter viel Kesselblech (manuelles Holen und Aufrufen des Injektors). Ich möchte, dass Bindung und Injektion hinter den Kulissen über Guice-Anmerkungen erfolgen.

Jonathan Currans ArtikelErstellen eines RESTful-Service mit Jersey, Guice und JSR-250 gab mir Hoffnung, weil es viel aktueller ist (2010), aber es war nichts weiter als zu zeigen, wie man einen Jersey-Dienst in einem Guice ServletModule startet. Es gibt jedoch keine Beispiele für eine echte Abhängigkeitsinjektion. Ich nehme an, das war eine Übung für den Leser. Currans Post könnte in der Tat der richtige erste Schritt sein, um Guice und Jersey miteinander zu verbinden, und deshalb plane ich, damit anzufangen.

verlockend James Strachan schreibt:

JAX-RS funktioniert gut mit Abhängigkeits-Injection-Frameworks wie Spring, Guice, GuiceyFruit oder JBossMC - Sie können im Grunde genommen auswählen, welches Sie bevorzugen.

Aber ich sehe keine Beweise, die aus der Sicht eines Praktizierenden wahr sind.

Was mir fehlt, sind praktische Beispiele und Erklärungen zum Kombinieren von JAX-RS- und Guice-Annotationen. Zum Beispiel

Ich glaube, ich kann keine Konstruktorinjektion mit einer Ressource verwenden, da Jersey dies kontrollieren möchte Ich bin mir nicht sicher, ob ich @Inject mit @PathParam, @QueryParam usw. kombinieren kann.Wie verwende ich Injection in einer MessageBodyWriter-Implementierung?

Hat jemand Beispiele, vorzugsweise mit Quelle, für eine nicht triviale Anwendung, die Jersey und Guice kombiniert, ohne dabei das eine oder andere zu opfern? Trotzdem bleibe ich auf diesem Weg, aber die Kleinigkeiten auf den Listen von Jersey und Guice lassen mich denken, dass ich die Arbeit anderer wiederhole, die vor mir kamen.