4

jspページをロードすると、添付されたcssファイルとjsファイルがtext/html形式でレンダリングされます。このエラーメッセージが表示されたChromeブラウザから気づきました

「リソースはスクリプトとして解釈されますが、MIMEタイプtext/htmlで転送されます」

web.xmlでmimeタイプを次のように指定しました。

    <mime-mapping>    
        <extension>js</extension>        
        <mime-type>application/javascript</mime-type>        
    </mime-mapping>

    <mime-mapping>    
        <extension>css</extension>        
        <mime-type>text/css</mime-type>        
    </mime-mapping>
    <mime-mapping>    
        <extension>jpg</extension>        
        <mime-type>image/jpeg</mime-type>        
    </mime-mapping>

アプリケーションを実行しているサーバーはApacheTomcat7です。このJSPファイルは、Vaadinプロジェクト内に作成しました。

私の質問は、Tomcat構成のどこかでMimeタイプを変更する必要があるかどうかです。CSSページとJSファイルをJSPページに含めるための制限はありますか?
またはそれはVaadinフレームワークのせいですか?

私はJSPとvaadinフレームワークを学ぼうとしている初心者です。

4

2 に答える 2

4

私はついにこの問題の理由を見つけました。デフォルトのURLマッピングを変更してweb.xmlを修正しました

例えば。以下のデフォルト値から

<servlet-mapping>
    <servlet-name>My Application</servlet-name>
    <url-pattern>/*</url-pattern>
</servlet-mapping>

<servlet-mapping>
    <servlet-name>My Application</servlet-name>
    <url-pattern>/home/*</url-pattern>
</servlet-mapping>

これを変更した後もエラーが発生し、追加して修正しました

<servlet-mapping>
<servlet-name>My Application</servlet-name>
<url-pattern>/VAADIN/*</url-pattern>
</servlet-mapping>

これは、ブック オブ ヴァーディンのセクション 4.8 https://vaadin.com/book/-/page/application.environment.htmlでカバーされています。

于 2012-07-14T05:52:18.397 に答える
0

私の場合、web.xmlすべてをフィルタリングするフィルターがあります。(IP アドレスに基づいて特定のページにリダイレクトされます。)

<filter-mapping>
    <filter-name>RedirectFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

このフィルター マッピングでは、すべての要求 (画像、スタイルシート、スクリプトなどを含む) がフィルターを通過します。filter-mappingから を削除するweb.xmlか、 のロジックをチェックしてfilter-class、リソースを許可または無視することで修正できます。

于 2015-10-22T16:54:16.160 に答える