java - JSF2如何在web.xml文件中指定多个自定义元素库

标签 java xml jsf-2 config

我有两个自定义组件,我需要在同一个项目中同时使用它们。 我知道如何指定单个组件(教程:http://myjavabuddy.blogspot.com/2013/04/writing-custom-components-for-jsf-20.html)(web.xml):

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  xmlns="http://java.sun.com/xml/ns/javaee"
  xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
  http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">

<context-param>
    <param-name>javax.faces.FACELETS_LIBRARIES</param-name>
    <param-value>/WEB-INF/marquee-taglib.xml</param-value>
</context-param>
</web-app>

只要我添加另一个组件 (web.xml),第一个元素就会停止工作:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  xmlns="http://java.sun.com/xml/ns/javaee"
  xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
  http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">

<context-param>
    <param-name>javax.faces.FACELETS_LIBRARIES</param-name>
    <param-value>/WEB-INF/marquee-taglib.xml</param-value>
</context-param>

<context-param>
    <param-name>javax.faces.FACELETS_LIBRARIES</param-name>
    <param-value>/WEB-INF/spinner-taglib.xml</param-value>
</context-param>
</web-app>

也不起作用:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  xmlns="http://java.sun.com/xml/ns/javaee"
  xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
  http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">

<context-param>
    <param-name>javax.faces.FACELETS_LIBRARIES</param-name>
    <param-value>/WEB-INF/marquee-taglib.xml</param-value>
    <param-value>/WEB-INF/spinner-taglib.xml</param-value>
</context-param>
</web-app>

如何在同一个 web.xml 文件中指定两个自定义元素?

最佳答案

使用以下内容:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  xmlns="http://java.sun.com/xml/ns/javaee"
  xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
  http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">

    <context-param>
        <param-name>javax.faces.FACELETS_LIBRARIES</param-name>
        <param-value>/WEB-INF/marquee-taglib.xml;/WEB-INF/spinner-taglib.xml</param-value>
    </context-param>
</web-app>

如果您使用 myFaces,您可以查看 here配置参数期望的参数值是什么。

关于java - JSF2如何在web.xml文件中指定多个自定义元素库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18460643/

相关文章:

java - 通过 Jersey 客户端调用 REST api 时添加多个 header

java - 如何让android直接连接mysql

xml - XSLT 1.0 Tansfomation - 将兄弟数据移动到特定的兄弟

java - 在 Maven 项目中添加 Primefaces 引用?

JSF-将参数传递给 valuechangelistener

java - 如果启用了 ajax,PrimeFaces commandButton 不会调用操作

java - 使用 VRaptor3 和 Tomcat 定义基本 URI

java - Android工作室: How to source android jar in a module

ios - swift 2 中的 XML 解析器在设备上返回 false

android - 如何在 fragment 中膨胀另一个 View ?