Heim > Java > javaLernprogramm > Hauptteil

Warum verursacht die Zuordnung des URL-Musters von Jersey zu /* 404-Fehler für statische Ressourcen in Jersey 2.0?

Susan Sarandon
Freigeben: 2024-10-27 08:38:02
Original
625 Leute haben es durchsucht

Why does mapping Jersey's URL pattern to /* cause 404 errors for static resources in Jersey 2.0?

Jersey /* Servlet-Zuordnung löst 404-Fehler für statische Ressourcen aus

Wenn das URL-Muster von Jersey in Jersey Version 2.0 /* zugeordnet ist, ist es kann zu 404-Fehlern für alle statischen Ressourcen wie index.html führen. Hier ist die web.xml-Konfiguration, die dieses Problem verursacht:

<code class="xml"><servlet>
  <servlet-name>JerseyApp</servlet-name>
  <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
  <init-param>
    <param-name>javax.ws.rs.Application</param-name>
    <param-value>org.frog.jump.JerseyApp</param-value>
  </init-param>
  <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
  <servlet-name>JerseyApp</servlet-name>
  <url-pattern>/*</url-pattern>
</servlet-mapping></code>
Nach dem Login kopieren

Lösung für Jersey 1.x

In Jersey 1.x können Sie vom Jersey-Servlet wechseln zum Filter, um die Bereitstellung statischer Inhalte zu ermöglichen:

<code class="xml"><filter>
  <filter-name>Jersey Filter</filter-name>
  <filter-class>com.sun.jersey.spi.container.servlet.ServletContainer</filter-class>
  <init-param>
    <param-name>javax.ws.rs.Application</param-name>
    <param-value>org.frog.jump.JerseyApp</param-value>
  </init-param>
  <init-param>
    <param-name>com.sun.jersey.config.property.WebPageContentRegex</param-name>
    <param-value>/.*html</param-value>
  </init-param>
</filter>
<filter-mapping>
  <filter-name>Jersey Filter</filter-name>
  <url-pattern>/*</url-pattern>
</filter-mapping></code>
Nach dem Login kopieren

Lösung für Jersey 2.x

Verwenden Sie in Jersey 2.x die folgende Filterkonfiguration:

<code class="xml"><filter>
  <filter-name>Jersey Filter</filter-name>
  <filter-class>org.glassfish.jersey.servlet.ServletContainer</filter-class>
  <init-param>
    <param-name>jersey.config.server.provider.packages</param-name>
    <param-value>org.example</param-value>
  </init-param>
  <init-param>
    <param-name>jersey.config.servlet.filter.staticContentRegex</param-name>
    <param-value>/.*html</param-value>
  </init-param>
</filter>
<filter-mapping>
  <filter-name>Jersey Filter</filter-name>
  <url-pattern>/*</url-pattern>
</filter-mapping></code>
Nach dem Login kopieren

Stellen Sie sicher, dass Ihr POM Folgendes enthält:

<code class="xml"><dependency>
  <groupId>org.glassfish.jersey.core</groupId>
  <artifactId>jersey-server</artifactId>
  <version>${jersey2.version}</version>
  <type>jar</type>
  <scope>compile</scope>
</dependency>

<dependency>
  <groupId>org.glassfish.jersey.containers</groupId>
  <artifactId>jersey-container-servlet-core</artifactId>
  <version>${jersey2.version}</version>
  <type>jar</type>
  <scope>compile</scope>
</dependency></code>
Nach dem Login kopieren

Passen Sie den regulären Ausdruck im Init-Param an, wenn Sie verschiedene statische Dateitypen (z. B. CSS, JSP) bereitstellen.

Das obige ist der detaillierte Inhalt vonWarum verursacht die Zuordnung des URL-Musters von Jersey zu /* 404-Fehler für statische Ressourcen in Jersey 2.0?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!