Wicket 8 中标题部分的资源添加方式在Adding resources to page header section一章的参考指南中有所描述。
在我的应用程序中,我以下列方式将CSS和JavaScript添加为包资源:
public class BasePage extends WebPage {
@Override
public void renderHead(IHeaderResponse response) {
super.renderHead(response);
ResourceReference regisCssRef =
new PackageResourceReference(getClass(), "static/css/regis.css");
response.render(CssHeaderItem.forReference(regisCssRef));
ResourceReference jqueryJSRef =
new PackageResourceReference(getClass(), "static/js/jquery.min.js");
response.render(JavaScriptHeaderItem.forReference(jqueryJSRef));
}
}
我的问题是:如何以类似的方式添加 favicon.ico 资源?因此,作为使用PackageResourceReference
类创建的资源
答案 0 :(得分:2)
<meta>
类用于<link>
和ResourceReference
元素。不幸的是,它不支持包资源,事实上,任何forReference()
- 它都错过了方法ResourceReference faviconRef =
new PackageResourceReference(
getClass(), "static/images/favicon.ico");
response.render(
MetaDataHeaderItem.forLinkTag("shortcut icon",
urlFor(faviconRef, null).toString()));
。
我能够通过以下代码解决我的问题,但不确定这是一个不错的解决方案:
//As long as there is some remainder
while($counter % 3) {
//add desired content
switch($counter++ % 3) {
case 1: break;
case 2: break;
}
}
答案 1 :(得分:0)
您可以使用MetaDataHeaderItem
类:
response.render(MetaDataHeaderItem.forLinkTag("icon", "static/fav.ico"));