2012-07-04 21 views

Odpowiedz

4

@Context to nadal oficjalny sposób wykonywania iniekcji w JAX-RS 2.0. Specyfikacja ma jednak stwierdzić, że implementacja może skorzystać z @Inject obok @Context (z sekcją 10.2.5 z JAX-RS 2.0 EDR 3):

Wdrożenia nie może wymagać użycia @Inject lub @Resource do wtrysk wyzwalaczem Adnotowane pola lub właściwości JAX-RS. Wdrożenia MOGĄ wspierać takie użycie, ale POWINIEN ostrzegać użytkowników o braku możliwości przeniesienia ich na numer .

Dlatego nie ma pewności, że wszystkie implementacje JAX-RS 2.0 obsługuje @Inject, a niezgodność może pojawić się, jeśli chce się zmienić JAX-RS wdrażania 2.0.

Zrobiłem małe badania i wygląda na to, że Jersey 2.0 otrzymał wsparcie przynajmniej na @Inject.

Chyba przewagę w użyciu @Inject zamiast @Context jest to, że jest bardziej spójna obok wszystkich „s of non JAX-RS zasobów należałoby w JAX-RS internetowej służbie @Inject.