2012-04-04 15 views
9

Poznaję spokojne serwisy internetowe i wszystkie samouczki używają pakietu javax.ws.rs. *. Ale w przypadku JDK 6 i JDK 7 moje zaćmienie nie rozpoznaje pakietu javax.ws. Czego tu mi brakuje?Pakiet javax.ws.rs

+0

Czy masz jsr311-api.jar w swojej ścieżce klas? – tenorsax

+0

Naprawienie problemu spowodowało dodanie jsr311-api.jar. Ale API Java 6 wspomina o tych klasach. Nie wiem, dlaczego muszę go dodać osobno. – user238021

Odpowiedz

2

javax.ws.rs nie jest pakietem JDK; jest to interfejs API po stronie serwera, który stanowi część specyfikacji Java EE. W ścieżce klas należy uwzględnić środowisko uruchomieniowe Java EE lub utworzyć implementację od firmy zewnętrznej, jeśli planowana jest trasa self-assembly (na przykład przy użyciu Tomcat).

+1

Dlaczego jax-ws (na bazie mydła) jest dostarczany z JDK, ale nie jax-rs (opiera się na odpoczynku)? – Abidi

+0

@Abidi Przypuszczam, że jest tak, ponieważ o wiele łatwiej jest napisać klienta REST niż klient SOAP, ale nie mogę dać ostatecznej odpowiedzi. – McDowell

+0

Interesujące, jax-rs pochodzi ze stosem Metro, a Metro jest dostarczane z JDK6. Oznacza to, że z JDK nie jest dostarczany pełen stos Metro. Zmieszany! – Abidi

2

Być może brakuje instalacji Jersey lub czegoś w konfiguracji środowiska. Spróbuj również zainstalować Eclipse WPT. Możesz śledzić to tutorial, obejmuje również wymagania wstępne i podstawowe procedury instalacyjne.

+0

Dodałem instalację dżersejową do ścieżki klasy. Ale Jersey nie ma pakietu javax.ws.rs. czy pakiet javax.ws.rs nie powinien być w pakiecie Java 6 SDK? Ale tak się nie wydaje. – user238021