java – Wicket应用程序中的全局可访问资源

目前,我有一个Application,它由一个BasePage组成,它作为标题(面板),页脚(面板)和继承页面内容的中心.我遇到的问题是ResourceReferences(也许这甚至不是正确的方法).我正在寻找一个解决方案,允许我做以下事情:

>为全局使用的图像,js,css设置一个目录
>注册(或不注册)这些资源,以便可以从任何继承的页面或兄弟页面访问我可能在将来创建的BasePage
>允许在CSS和JS中访问这些资源(例如,图像的URL)

到目前为止,我已经阅读了几个示例,这些示例显示了如何为组件或应用程序级别范围打包资源,但似乎没有一个能够解决我正在寻求帮助的所有3个问题.至关重要的是,我不必将全局使用的图像(编辑图标,徽标等)复制到每个组件包中以进行引用,并且出于维护原因这些绑定可以在一个地方全局进行以便于参考,这将是很好的.更新.

解决方法

自Wicket 1.4以来,这已经发生了重大变化.请参阅 ‘Adding Javascript or CSS using a Resource’ in Wicket’s Wiki

要使图像和其他资源可以全局访问(特别是从CSS和JS文件中),请将它们安装在Applications的init()方法中:

mountSharedResource("/images/submit.jpg",new ResourceReference(MyComponent.class,"foo.jpg").getSharedResourceKey());

绝对不需要以任何方式复制资源.资源不必与组件本身位于相同的包中.在我们的应用程序中,我们将全局使用的资源放入专用包(比如com.example.myapp.images)并在其中放入一个类(例如ImagesScope.java) – 对于JS和CSS也是如此.

对于图像,您不需要ResourceReference,因为您不需要在代码中呈现这些引用(org.apache.wicket.markup.html.image.Image除外).用于JS和CSS使用

add(CsspackageResource.getHeaderContribution(PanelOne.class,"PanelOne.css"));

顺便说一下,我是GitHub提供的little library called wicketstuff-merged-resources的作者.使用此库,您可以跳过应用程序的init()中的手动安装,而是使用注释.

编辑:更新链接.不幸的是,wicketstuff wiki中的文档现在似乎已经消失了.虽然有some articles on our blog.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


应用场景 C端用户提交工单、工单创建完成之后、会发布一条工单创建完成的消息事件(异步消息)、MQ消费者收到消息之后、会通知各处理器处理该消息、各处理器处理完后都会发布一条将该工单写入搜索引擎的消息、最终该工单出现在搜索引擎、被工单处理人检索和处理。 事故异常体现 1、异常体现 从工单的流转记录发现、
线程类,设置有一个公共资源 package cn.org.chris.concurrent; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; /** * @Descrip
Java中的数字(带有0前缀和字符串)
在Java 9中使用JLink的目的是什么?
Java Stream API Filter(过滤器)
在Java中找到正数和负数数组元素的数量
Java 9中JShell中的不同启动脚本是什么?
使用Java的位填充错误检测技术
java中string是什么
如何使用Java中的JSON-lib API将Map转换为JSON对象?
Java菜单驱动程序以检查数字类型
使用Junit的Maven项目 - 检查银行账号
JAVA编程基础
在Java中使用throw、catch和instanceof来处理异常
在Java中,将数组分割为基于给定查询的子数组后,找到子数组的最大子数组和
如何在Java中从给定的字符串中删除HTML标签?
在PHP中,IntlChar getBlockCode()函数的翻译如下:
如何在Android中实现按下返回键再次退出的功能?
如何使用Java中的流式API解析JSON字符串?
Java中的模式类