Anforderungsspezifische Kontextfeldinjektionen in RESTEasy-Singletons

Während Sie versuchen, RESTEasy mit Singleton-Ressourcen in OSGi einzubetten (mit etwas ähnlichem wie resteasy-osgi-bundle), zu meiner Überraschung feldinjiziert@Context UriInfo war bei jeder Anfrage verfügbar und gültig.

Digging tiefer fand ich Proxy-Magie undThreadLocal imResteasyProviderFactory. Alles schön und gut, aber ich kann keinen Hinweis auf ein solches Verhalten in Dokumenten finden, weder in RESTEasys noch in JAX-RS-Spezifikationen.

ImJersey docs wir können so etwas finden wie:

Die Ausnahme besteht für bestimmte Anforderungsobjekte, die sogar in Konstruktor- oder Klassenfelder eingefügt werden können der Ressourcen mit Singleton-Gültigkeitsbereich - OP]. Für diese Objekte werden von der Laufzeit Proxys eingefügt, die gleichzeitig mehr Anforderungen verarbeiten können. Diese Anfrageobjekte sindHttpHeaders, Request, UriInfo, SecurityContext. Diese Proxys können mit dem @ injiziert werd@Context annotation.

Wie sieht es in RESTEasy aus? Ist die aktuelle Implementierung stabil oder experimentell? Welche anforderungsspezifischen Klassen können in Singletons injiziert werden?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage