Rainbow Engine

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

HTML/css Java JSP/Servlet

JSPでcssが適用されない(Resouce interpreted as Stylesheet but transferred with MIME type)事象のトラブルシューティング記録

投稿日:2021年4月19日 更新日:

<目次>

(1) JSPでcssが適用されない(Resouce interpreted as Stylesheet but transferred with MIME type)事象のトラブルシューティング記録
 (1-1) 発生状況・エラーメッセージ
 (1-2) 原因
 (1-3) 対処
 (1-4) エラーからの学び

(1) JSPでcssが適用されない(Resouce interpreted as Stylesheet but transferred with MIME type)事象のトラブルシューティング記録

(1-1) 発生状況・エラーメッセージ

JSPに正しくcssを読み込んでいるにも関わらず、cssが正しく適用されない事象でした。

(エラーメッセージ)

Resource interpreted as Stylesheet but transferred with MIME type text/html: “[cssのパス]".
 
実際に開発者ツール(F12)等でネットワークトラフィックを見ても、cssの読み込み自体は正常に出来ていました。

 

(図111)cssは読み込めている

しかし、エラーメッセージにも書かれている通り、MIMEタイプが指定されているとメッセージが出ており、実際にレスポンスヘッダーには「Content-Type: text/html;~」となっており、想定していた「text/css;」にはなっていませんでした。

 

●レスポンスヘッダーの「Content-Type」
Content-Type: text/html;charset=UTF-8
(図112)

目次にもどる

(1-2) 原因

原因はフィルタークラスのプログラムで意図せず「ContentType」の設定をしていた事が原因でした。

response.setContentType("text/html; charset=UTF-8");
 
フィルタークラスはデフォルトではHTTPリクエストの前後で実行されるため、cssを読み込むリクエストに対しても意図せず「ContentType」がセットされてしまっていました事が原因でした。
 

(1-3) 対処

前述の通り、フィルタークラスにて「ContentType」をセットしていたのが原因のため、そこをコメントアウトする事で正常に動作しました。

(修正後)setContentTypeをコメントアウト

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
	request.setCharacterEncoding("UTF-8");
	//# ↓コメントアウト
	//response.setContentType("text/html; charset=UTF-8");
	chain.doFilter(request, response);
}
(図131)
上記の修正を適用した結果、cssが正しくJSP画面に適用されるようになりました。

(図132)

目次にもどる

(1-4) エラーからの学び

フィルタークラスは共通的に適用できる利便性がある反面、意図しない処理に対してもフィルターが適用されてしまう危険もあるため、本当に共通的に適用したい設定に絞って記述をし、それ以外は個別に記述していく必要がある事を学びとして感じました。

目次にもどる

Adsense審査用広告コード


Adsense審査用広告コード


-HTML/css, Java, JSP/Servlet

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

JFreeChartを使ってJavaで様々なグラフを簡単に描画する方法

(0)目次&概説 (1) 記事の目的  (1-1) 目的 (2) JFreeChartの概要  (2-1) JFreeChartとは?  (2-2) JFreeChartのアーキテクチャについて (3 …

木構造の探索における計算量の違いや木構造の種類について(B木/二分木/2-3探索木)

<目次> (1) 木構造の探索における計算量の違いや木構造の種類について(B木/二分木/2-3探索木)  (1-1) 木構造について  (1-2) 「B木」構造  (1-3) 「二分木」構造  (1- …

Javaの動的Webプロジェクト作成での事前設定と雛形Webプロジェクト作成

「動的Webプロジェクト」とはHTMLのような静的ページのみならず、ServletやJSPを用いてWebアプリケーション開発をする際に作成します。本記事ではEclipseにて「動的Webプロジェクト」 …

JSPにおけるincludeディレクティブとjsp:includeアクションの違い

<目次> (1) JSPにおけるincludeディレクティブとjsp:includeアクションの違い  (1-1) includeディレクティブ  (1-2) jsp:includeアクション  (1 …

JVMの基本アーキテクチャと各サブシステム等の概要説明について

(0)目次&概説 (1) 記事の目的 (2) Javaのアーキテクチャ概要・概観 (3) JVMのアーキテクチャ概要  (3-1) JVMの概観  (3-2) JVMの主要サブシステム1:Class …

  • English (United States)
  • 日本語
Top