Wann muss ich auf Jersey ServletContainer in web.xml zum aktivieren der JAX-RS?
Wann brauche ich, um folgende snippet in web.xml um diese zu aktivieren Jersey?
<servlet>
<servlet-name>Jersey App</servlet-name>
<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>com.company.rest</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
Ist es App. Server abhängig, wenn Jersey ist standardmäßig aktiviert oder muss diese web.xml Eintrag?
Wenn eine App. Server ist nicht erforderlich, den code oben kann ich konfigurieren Sie die servlet-mapping-Pfad, wie:
<servlet-mapping>
<servlet-name>Jersey App</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
- Es hängt von der version der Servlet-container und das Trikot selbst. Die, die Sie gepostet wird, ist für die 1.x-version von jersey. Für die neuere 2.x-Versionen betrachten jersey.java.net/documentation/2.7/....
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich bin nur der Zusammenfassung der Jersey 2.x-docs gesendet von Bhesh im Kommentar:
Servlet-2.x-Container
(Java EE 5, Glassfish 2.x), die Sie brauchen, um Haken Jersey als ein Servlet.
oder einen Servlet-Filter:
Servlet-3.x-Container
Descriptorless Fall
(Java EE 6, 7; Glassfish 3, 4)Es gibt keine Notwendigkeit für
web.xml
Konfiguration für den einfachsten Fall. Anstatt eine benutzerdefinierteResourceConfig
Klasse benötigt, mit@ApplicationPath
- Anmerkung für die Konfiguration:Konfigurieren mit web.xml
In diesem Fall die root-Ressource-Klassen (die Klassen annotiert mit @Path-annotation) sowie alle Anbieter, die sind annotiert mit @Provider annotation verpackt mit der Anwendung wird automatisch registriert, in der JAX-RS-Anwendung.