在一个应该加载JS资源的面板中,我使用以下方法向面板添加一个Behavior:
@Override
public void renderHead(Component component, IHeaderResponse response){
response.render(JavaScriptHeaderItem.forReference(new
JavaScriptResourceReference(relativeClass,
WebApplication.get().getServletContext().getContextPath() +
jsRef)));
}
从调试中逐步看出,name参数是前置于资源url的上下文路径,这正是我想要的!但是,当网站运行时,小组会查看localhost:8080/context/scopeURL/context/resourceURL
而不是localhost:8080/context/resourceURL
。范围不能设置为null,那么我必须使用name参数来正确访问资源吗?
将类保存在我尝试加载的脚本的根目录下的单独目录结构中,否则这不会是一个问题。对我来说,适用于Wicket 6.x的答案应适用于此版本。
答案 0 :(得分:0)
JavaScriptResourceReference使用Class“relativeClass”作为范围,并在URL中对其进行编码。
您需要使用ContextRelativeResourceReference(jsRef)