SpringとMavenで構築しているJavaEEアプリケーションがあります。通常のプロジェクト構造になっています。これが階層の一部です。
MyApplication
src
main
webapp
WEB-INF
layout
header.jsp
styles
main.css
そのCSSファイルをJSPに含めたいです。次のタグを付けています。
<c:url var="styleSheetUrl" value="/styles/main.css" />
<link rel="stylesheet" href="${styleSheetUrl}">
アプリケーションをデプロイすると、CSSページが見つかりません。ページソースを表示すると、hrefは/MyApplication/styles/main.css
です。WARの内部を見ると、があり/styles/main.css
ます。ただし、ブラウザでCSSファイルに直接アクセスしようとすると404が表示されます。
この問題の原因は、ディスパッチャサーブレットのマッピングであることがわかりました。マッピングは次のようになります。
<servlet-mapping>
<servlet-name>Spring MVC Dispatcher Servlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
DispatcherサーブレットはCSSリクエストの処理方法を知らないと思います。この問題を処理するための最良の方法は何ですか?すべてのリクエストマッピングを変更する必要はありません。