Ich habe Probleme beim Laden von CSS und Bildern und beim Erstellen von Links zu anderen Seiten, wenn ein Servlet an eine JSP weitergeleitet wird. Insbesondere wenn ich meine <welcome-file>auf setze , index.jspwird das CSS geladen und meine Bilder werden angezeigt. Allerdings, wenn ich mein Set <welcome-file>auf , HomeServletdie nach vorne zu steuern index.jsp, wird die CSS nicht angewandt wird und meine Bilder werden nicht angezeigt werden.
Meine CSS-Datei befindet sich in web/styles/default.css.
Meine Bilder sind in web/images/.
Ich verlinke wie folgt mit meinem CSS:
<link href="styles/default.css" rel="stylesheet" type="text/css" />
Ich zeige meine Bilder wie folgt an:
<img src="images/image1.png" alt="Image1" />
Wie wird dieses Problem verursacht und wie kann ich es lösen?
Update 1 : Ich habe die Struktur der Anwendung sowie einige andere Informationen hinzugefügt, die möglicherweise hilfreich sind.

Die header.jspDatei ist die Datei, die das Link-Tag für das CSS enthält. Das HomeServletist wie mein welcome-filein gesetzt web.xml:
<welcome-file-list>
<welcome-file>HomeServlet</welcome-file>
</welcome-file-list>
Das Servlet wird wie folgt deklariert und zugeordnet web.xml:
<servlet>
<servlet-name>HomeServlet</servlet-name>
<servlet-class>com.brianblog.frontend.HomeServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HomeServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
Update 2 : Ich habe das Problem endlich gefunden - mein Servlet wurde falsch zugeordnet. Wenn Sie ein Servlet als Ihr Servlet festlegen <welcome-file>, kann es anscheinend kein URL-Muster haben /, was ich irgendwie komisch finde, denn würde das nicht für das Stammverzeichnis der Site stehen?
Die neue Zuordnung lautet wie folgt:
<servlet-mapping>
<servlet-name>HomeServlet</servlet-name>
<url-pattern>/HomeServlet</url-pattern>
</servlet-mapping>