CSSファイルは自動改札でリフレッシュしないでください(Start.java経由のIntelliJで発売)
-
21-08-2019 - |
質問
私は
を使用してスケルトンWicketのプロジェクトを作成していますmvn archetype:create -DarchetypeGroupId=org.apache.wicket -DarchetypeArtifactId=wicket-archetype-quickstart -DarchetypeVersion=1.4-rc4 -DgroupId=com.mycompany -DartifactId=myproject
すべての設定は、/ Mavenを使用して新しいプロジェクトをインポート/ IntelliJのはうまく働きました。私は、Wicketの1.4でそれをやって、次の推奨される方法ごとに、私のスタートページへの基本的なCSSファイルを追加するために進めた。
public class BasePage extends WebPage {
public BasePage() {
add(CSSPackageResource.getHeaderContribution(BasePage.class, "main.css"));
}
}
のmain.cssファイルがに/ srcに/メイン/ javaの側BasePage.javaとBasePage.htmlに沿って置かれています。私はStart.javaを使用してアプリケーションを起動します。私はStart.javaを再起動するとき、それはピックアップされていないCSSファイルに変更を加える際に問題があります。 (JavaとHTMLファイルへの変更私はそれらを変更したときに更新されている)。
私は、ブラウザのキャッシュがクリアされていたことを確認した、とさえFirfox / Firebugので要求/応答をvalided。どこかにWicketの魔法の間と桟橋インスタンスStart.javaは、CSSファイルを作成しますが、キャッシュされ、更新されないされているように思えます。任意のアイデア?
解決
私は/ webappディレクトリにcssファイルを移動し、それが変更を登録するStart.javaを得ることの問題を解決するように見えました。私は、JSファイルや画像のために同じことをやっています。不思議なことに、私は(HTMLとJavaクラスのコンセンサスは彼らに同じ場所を持つことは常にあるが)人々はさまざまな方法でこれをやって(複数のサイト上で)読んだ。
他のヒント
私は私を助け、他の解決策を見つけます。あなたはキャッシングの問題を解決するためのリソースに対する要求にタイムスタンプを追加するために改札を設定することができます。 recource設定のアプリケーションクラスのコールsetAddLastModifiedTimeToResourceReferenceUrlのinitメソッドでます。
public class MyApplication extends WebApplication {
@Override
protected void init() {
getResourceSettings().setAddLastModifiedTimeToResourceReferenceUrl(true);
}
}
オリジナル:<のhref = "http://old.nabble.com/Javascript-CSS-being-cached-by-the-browser-even-when-it-has-changed.-Should-setAddLastModifiedTimeToResourceReferenceUrl%28true %29は、被デフォルト - td14886538.html」のrel = "nofollowをnoreferrer"> http://old.nabble.com/Javascript-CSS-being-cached-by-the-browser-even-when-it -has-changed.-万一-setAddLastModifiedTimeToResourceReferenceUrl%28true%29被デフォルト - td14886538.htmlする