Jsf 如何从Facelets和web.xml引用JAR中的Facelets标记库?
我正在使用ApacheMyFacesCommons标记库 如何将其添加到web.xml中?commons JAR是通过Maven下载和解析的 XHTML(我认为这是正确的):Jsf 如何从Facelets和web.xml引用JAR中的Facelets标记库?,jsf,facelets,taglib,myfaces,Jsf,Facelets,Taglib,Myfaces,我正在使用ApacheMyFacesCommons标记库 如何将其添加到web.xml中?commons JAR是通过Maven下载和解析的 XHTML(我认为这是正确的): web.xml: <context-param> <!-- To add additional tab libs --> <param-name>facelets.LIBRARIES</param-name> <param-value>??.xml
web.xml:
<context-param>
<!-- To add additional tab libs -->
<param-name>facelets.LIBRARIES</param-name>
<param-value>??.xml</param-value>
</context-param>
facelets.LIBRARIES
.xml
编辑:我之所以进入这一步,是因为我试图错误地引用Maven依赖项,在这样做的过程中,我试图从Apache下载jar并从我自己的存储库管理器托管它。我试图自己托管的jar不包含taglib jar
正确获得依赖项后,一切正常,不需要像balusC推荐的那样显式定义taglib。谢谢
<dependency>
<groupId>org.apache.myfaces.commons</groupId>
<artifactId>myfaces-commons</artifactId>
<version>1.1.2</version>
</dependency>
org.apache.myfaces.commons
MyFacesCommons
1.1.2
该库的*.taglib.xml
文件已经在JAR的/META-INF
中。您不需要向web.xml
添加任何内容。如果JAR位于webapp的运行时类路径中,那么taglib将被自动发现。另见本标准第10.3.2章:
10.3.2 Facelet标签库机制
运行时必须支持Facelet标记库描述符的两种发现模式
- 按照第11.1.3节“应用程序配置参数”的规定,通过web.xml中的声明
- 通过自动发现,将标记库描述器文件放在web应用程序类路径的jar中,命名文件,使其以
结尾,不带引号,并将文件放在 jar文件“.taglib.xml”
/WEB-INF/lib
文件夹
如果您在使用该库时遇到问题,则是由您认为以外的原因造成的。您好,巴卢斯克,正如您所怀疑的,这是由于另一个问题造成的,您是对的。非常感谢。不客气。将来,试着问如何解决问题,而不是如何找到解决方案(这可能不一定是你真正问题的正确解决方案)。
<dependency>
<groupId>org.apache.myfaces.commons</groupId>
<artifactId>myfaces-commons</artifactId>
<version>1.1.2</version>
</dependency>