リソースはスタイルシートとして解釈されるが、MIMEタイプはapplication/octet-streamで転送される。
2022-02-22 18:32:30
先日、spring bootを中心にプロジェクトをリファクタリングし、テストを容易にするためにswaggerを追加するつもりでしたが、ビルドの過程で以下のようにcssファイルが読み込めないことがわかりました。
ページの読み込みはできたのですが、cssスタイルの読み込みがうまくいかず、コンソールメッセージを見たところ、以下のようなプロンプトが表示されました。
css スタイルの MIME タイプが text/css ではなく application/octet-stream になっていることがわかるので、フィルターで css を除去したのかと思ったが、パケットキャプチャではリターンに問題はなかったので、あとはレスポンスで MIME タイプを設定した場合に問題があるとしか思えない状況で、徐々にデバッグを進めていくと、以下のことがわかった。
PathExtensionContentNegotiationStrategy.java が css に従った mimeType の取得に失敗しています。
mimeTypeの型を取得するためにfileTypeMap "mimetype from org/springframework/mail/javamail/mime.types" を発見、このファイルはspring-context-supportパッケージ内にあり、pom.xmlがこのパッケージを参照していないことを確認、このパッケージの依存関係を追加したら問題は解決しました。
関連
-
jd-gui Java Exceptionが発生しました。
-
java Mail send email smtp is not authenticated by TLS encryption solution.
-
SocketTimeoutExceptionの解決方法です。読み込みがタイムアウトした
-
起動時にEclipseエラーが発生しました。起動中に内部エラーが発生しました。java.lang.NullPoin: "Javaツーリングの初期化 "中に内部エラーが発生しました。
-
Java(1)仕上げの基本概念+eclipseのインストール構成
-
ブラウザでの大容量ファイルスライスアップロード(Javaサーバサイド実装)
-
宣言されたパッケージ XX は、期待されるパッケージ src.main.java.XX と一致しません。
-
dao インターフェースがメソッドを定義し、エラーを報告した。 xxx 型のメソッド xxx は未定義である。
-
アイデア2021.2が起動しないことを一度記録した
-
エコー文字列を決定するためのjavaの簡単な実装をいくつか紹介します。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
スタイルが読み込まれず、ブラウザのコンソールでエラーが報告される。リソースはスタイルシートとして解釈されますが、MIMEタイプtext/htmlで転送されます。
-
final, finally, finalizeの違いについて話してください。
-
プロローグでのコンテンツは禁止されています
-
Java コンパイルエラー - スレッド "main" で例外 java.lang.Error: 未解決のコンパイル問題です。
-
Error: java.lang.NoClassDefFoundError: クラス XXXX を初期化できませんでした
-
コミットには何も追加されないが、未追跡のファイルが存在し、gitで未追跡のファイルに対する完璧な解決策
-
Javaドッキングリーダの落とし穴について終了コード -1073740940 (0xC0000374)でプロセス終了
-
javaで "Unhandled exception type ...... "を処理するには?
-
ajaxでエクセルをアップロードする
-
javaException: 比較メソッドが一般契約に違反しています!