- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我在 JSF 组件中使用 @ResourceDependency
注释将 Javascript 和 CSS 文件添加到我的 JSF 页面中。
在我的 Javascript 文件中,我需要引用另一个资源文件(一个 .swf 文件,根据 JSF 的要求,它位于 META-INF/resources 中)。我试图在我的 javascript 代码中放置一个 #{resource['swf:file.swf']}
EL 表达式,但它不会得到解析。
例如,对于服务器中的以下 JS 文件:
var instance = new JSClass();
instance.setResourceUrl("#{resource['swf:file.swf']}");
浏览器获取:
var instance = new JSClass();
instance.setResourceUrl("#{resource['swf:file.swf']}");
这是错误的。
当我将相同的 EL 放入 CSS 文件时,它得到了正确解析。对于服务器中的以下 CSS 文件:
.instance-css-class {
background: url("#{resource['swf:file.swf']}")
}
浏览器获取:
.instance-css-class {
background: url("/webapp/javax.faces.resource/file.swf.jsf?ln=swf")
}
这正是我需要的,但在 JS 文件中。
显然,我可以使用 CSS 作为该问题的解决方法(创建一个 DOM 元素,将 CSS 类附加到它,然后读取和解析所需的样式属性)。但是,有没有更优雅的方法来实现它?它是 JSF 库中的错误(我使用的是 Mojarra 2.0.3 和 Jboss 6.1),还是存在这种行为的原因?
请注意,上面的代码是标签库的一部分,因此解决方法如 those无法使用。
编辑 - 似乎 CSS 解决方法不可行,因为我看不到从 CSS 文件获取 CSS 属性的方法。因此,任何(有效的)解决方法也将很乐意接受。
最佳答案
BalusC 已经详细回答了类似的问题here .虽然第一个解决方案最容易实现,但我建议您使用第三个,我认为这是正确的方法。
关于java - 在 Javascript 文件中获取 EL,由 @ResourceDependency 加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7220160/
我在 JSF 组件中使用 @ResourceDependency 注释将 Javascript 和 CSS 文件添加到我的 JSF 页面中。 在我的 Javascript 文件中,我需要引用另一个资源
@ResourceDependency(library = "component/myComponent", name = "myComponent1.css") public class MyCom
我正在开发一个 UIComponent,它使用带有 @ResourceDependency 注释的 javascript 文件,但它不会生成该文件的链接,而是仅在 src 属性中打印“RES_NOT_
我是一名优秀的程序员,十分优秀!