JSF和Primefaces组件不呈现

时间:2013-11-14 08:43:03

标签: eclipse jsf java-ee primefaces glassfish

我在eclipse kepler上使用了primefaces4.0和glassfish4以及java ee7 我配置它(把主题和主要的jar放在lib和java构建路径以及类变量上并将它添加到web.xml上)但是组件根本没有。这是我的代码

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html
     xmlns="http://www.w3.org/1999/xhtml"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"
 xmlns:p="http://primefaces.org/ui">
    <h:head>
     <meta charset="windows-1256"></meta>
      <title>Connexion</title>
     </h:head>
     <h:body>
      <h:form>
      <fieldset> 
      <p:outputLabel for="email">Adresse email <span class="requis"></span>     </p:outputLabel>    
            <p:inputText id="email" value="" required="true" size="20" maxlength="60"  />
      <p:message id="emailMessage" for="email" errorClass="erreur" />
      <br/>  
       <p:outputLabel for="motdepasse">Mot de passe <span class="requis"></span></p:outputLabel>
      <p:inputSecret id="motdepasse" value="" required="true" size="20" maxlength="20"                       />
        <p:message id="motDePasseMessage" for="motdepasse"
            errorClass="erreur" />
        <br />
        <p:commandButton value="Connexion" action="" ajax="false" />
        </fieldset>
        </h:form>

                    </h:body>
                    </html>

这是我的web.xml文件

        <?xml version="1.0" encoding="UTF-8"?>
        <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
        xmlns="http://xmlns.jcp.org/xml/ns/javaee" 
        xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee       http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" 
id="WebApp_ID" version="3.1"
        >
        <display-name>Portail</display-name>
        <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        </welcome-file-list>
         <context-param>
         <param-name>primefaces.THEME</param-name>
         <param-value>bootstrap</param-value>
          </context-param>
   <servlet>
     <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
       <load-on-startup>1</load-on-startup>
        </servlet>
         <servlet-mapping>
         <servlet-name>Faces Servlet</servlet-name>
         <url-pattern>*.xhtml</url-pattern>
         </servlet-mapping>

        </web-app>

2 个答案:

答案 0 :(得分:2)

您的文件名为index.html,但在您的web.xml中,您指定了您只想呈现以.xhtml结尾的文件。将您的文件重命名为index.xhtml

答案 1 :(得分:0)

我在阅读此帖No TagLibrary associated to PrimeFaces's namespace后想出了为什么这些组件没有重新发布。

我确实把jar放在了lib中,但是我没有正确地部署它,这就是为什么标签没有完成他们的工作。我这次重复了配置,更加注意,终于工作了。