我在互联网上阅读了很多关于在JAR文件中打包JSF2复合组件的内容。
有人知道我在哪里可以找到JAR的结构(规格,官方文档等)。是否有办法使用Netbeans IDE,或者Maven是否存在原型?
答案 0 :(得分:4)
来自JSF composite
tag library documentation summary(强调我的):
创建复合组件
默认实现必须支持创作。通过在资源库中创建Facelets2文件来声明复合组件。 (有关资源库的更多信息,请参阅规范起草文档的JSF.2.6部分。)复合组件必须位于资源库中。如果不将它放在资源库中,就无法创建复合组件。
来自the JSF specification的第2.6节:
2.6.1.2将资源打包到类路径
对于默认实现,类路径中打包的资源必须位于 JAR条目名称:
META-INF/resources/<resourceIdentifier>
必须使用
getResource*()
的{{1}}方法访问打包到类路径中的资源,方法是调用当前ClassLoader
的{{1}}方法。
到目前为止,所有复合组件都必须进入JAR的getContextClassLoader()
文件夹。在常规WAR中,它与Thread
的处理方式相同(因此您仍需要一个额外的子文件夹来表示复合组件的主命名空间)。
对于这种情况,如果JAR还包含带有/META-INF/resources
等JSF注释的类,那么JAR还必须具有JSF 2.0兼容的/WEB-INF/resources
文件才能触发JSF注释扫描程序为实现任何JSF注释的类抓取整个JAR。
对于Netbeans / Maven部分,抱歉我不知道因为我不使用它们。