2011-07-01 10 views
3

wicket 1.5.xを使用していて、すべてのページ、パネル、フォームで共有されるCSSファイルをロードしようとしています。今、私はBasePageにCSSファイル([アプリケーション]/WebApps /スタイル)ディレクトリを静的に追加し、他のページを拡張します。wicket 1.5を使用してアプリケーション内のすべてのコンポーネントに使用可能なCSSリソースを追加する

ここでパネル用にこのCSSファイルを使用したい場合は、そのファイルにCSSクラスを追加するとクラス/ IDセレクタが表示されません。CSSファイルはBasePageのhtmlヘッドに添​​付されていません。代わりに、私はグローバルなCSSファイルを使いたいと思っていました。私はこのように行うことを試みた:

私はINIT()で次の関数を呼び出すことで、このようにやった私のApplicationクラスで

私のリソースクラスがある
private void mountResources(){ 
    mountResource("/css/layout.css", Resources.CSS_BASE); 
} 

public abstract class Resources { 

public static final ResourceReference CSS_BASE 
= new CssResourceReference(OrbitApplication.class, "resources/layout.css"); 

}

ここでは、私のCSSはmain/resource /ディレクトリ(maven構造体)にあります。しかし、CSSは読み込まれていません。私はHeaderContributorについて聞いたことがありますが、私のwicket 1.5アプリケーションでの使用方法は見つかりませんでした。

これを行う方法のアイデアやスニペットはありますか?助けに感謝します。

答えて

3

使用

MyApp.init() { 
    super.init(); 

    org.apache.wicket.Application.getHeaderContributorListenerCollection().add(new IHeaderContributor() { 

    public void renderHead(IHeaderResponse response) { 
     response.renderCssReference(Resources.CSS_BASE); 
    } 
    }); 
} 

はなぜIRCでのご質問への回答を読んでいませんか?

+0

こんにちはmartin、私はその時にweb ircを使用し、私はwhile.sorryのために切断された、私は応答を読み取ることができませんでした。 – Shahriar

関連する問題