2012-01-14 5 views
0

私はTomcatでJSF 2とRichFacesを使用しています。私は初心者で、hereというページを試してみましたが、ページは空白です(コンテンツはレンダリングされません)。私はFacelets 1.1ライブラリを追加しようとすると、ページは問題なくレンダリングされます。しかし、私はJSF 2ではFaceletsライブラリがデフォルトで含まれているので必要ないと読んでいます。私はFaceletsのライブラリを追加するとき、私は のようなメッセージが出て起動した場合にも、他のページが影響を受けている「ライブラリは、名前空間をサポート:http://java.sun.com/jsf/htmlが、ないタグは名前のために定義されませんでした。頭」OK働いていたページについてライブラリなしで。Facelets:ページがレンダリングされない

  1. RichFacesの-API-3.3.3.Final.jar
  2. RichFacesの-IMPL-3.3.3.Final.jar
  3. : は私も/ WEB-INF/libディレクトリに次のライブラリが含まれて
  4. RichFacesの-IMPL-jsf2-3.3.3.Final.jar
  5. RichFacesの-UI-3.3.3.Final.jar
  6. jstl.jar
  7. standard.jar

わかりやすくするために、私のコードはここにあります(長すぎないようにいくつかのセクションが削除されています)。

NB:h:formまたはh:panelGridにプレーンテキストを挿入すると問題なくレンダリングされます。

<ui:composition xmlns="http://www.w3.org/1999/xhtml" 
xmlns:ui="http://java.sun.com/jsf/facelets" 
xmlns:h="http://java.sun.com/jsf/html" 
xmlns:f="http://java.sun.com/jsf/core" 
xmlns:a4j="http://richfaces.org/a4j" 
xmlns:rich="http://richfaces.org/rich"> 
<style> 
    .cols { 
     vertical-align: top; 
     } 
</style> 
<h:form id="form"> 
    <h:panelGrid columns="2" columnClasses="cols,cols" width="400"> 
     <rich:panelMenu style="width:200px" mode="ajax" 
      iconExpandedGroup="disc" iconCollapsedGroup="disc" 
      iconExpandedTopGroup="chevronUp" iconGroupTopPosition="right" 
      iconCollapsedTopGroup="chevronDown"> 
      <rich:panelMenuGroup label="Group 1"> 
       <rich:panelMenuItem label="Item 1.1" 
        action="#{panelMenu.updateCurrent}"> 
        <f:param name="current" value="Item 1.1" /> 
       </rich:panelMenuItem> 
       <rich:panelMenuItem label="Item 1.2" 
        action="#{panelMenu.updateCurrent}"> 
        <f:param name="current" value="Item 1.2" /> 
       </rich:panelMenuItem> 
       <rich:panelMenuItem label="Item 1.3" 
        action="#{panelMenu.updateCurrent}"> 
        <f:param name="current" value="Item 1.3" /> 
       </rich:panelMenuItem> 
      </rich:panelMenuGroup> 
     </rich:panelMenu> 
     <rich:panel bodyClass="rich-laguna-panel-no-header"> 
      <a4j:outputPanel ajaxRendered="true"> 
       <h:outputText value="#{panelMenu.current} selected" id="current" /> 
      </a4j:outputPanel> 
     </rich:panel> 
    </h:panelGrid> 
</h:form> 

答えて

0

あなたはJSF 2.0ライブラリを追加しましたか?

<dependency> 
    <groupId>javax.faces</groupId> 
    <artifactId>javax.faces-api</artifactId> 
    <version>2.1</version> 
    <scope>provided</scope> 

そして、このようなあなたのウェブXMLを設定しましたか?

<servlet> 

<servlet-name>Faces Servlet</servlet-name> 

<servlet-class>javax.faces.webapp.FacesServlet</servlet-class> 

<load-on-startup>1</load-on-startup> 

<servlet-name>Faces Servlet</servlet-name> 

<url-pattern>*.jsf</url-pattern> 

<servlet-name>Faces Servlet</servlet-name> 

<url-pattern>/*</url-pattern> 

+0

こんにちはjsf-api.jarとjsf-impl.jarがJava EE 6ライブラリで追加されました。両方ともMANIFEST.MFファイルのImplementation-Version:2.0.3-FCSです。 web.xmlには、上記の構成があります。しかし、私は依存関係をどこに追加するのか不明です。 – gkinu

+0

これ以上のアイデアはありますか? – gkinu

+0

tomcat 6または7を使用しますか?何もする必要はありません。それは働かなければならない。 4 mozarraのlibsでtomcatディレクトリの古いlibsを変更する必要があります –

0

ライブラリにライブラリの競合がありますが、あなたが参照している問題に関連しているかどうかはわかりません。

プロジェクトで、次のライブラリの両方の必要はありません。

  • RichFacesの-IMPL-3.3.3.Final.jar
  • RichFacesの-のimpl-jsf2-3.3.3.Final.jarを

これらには、同様のクラスセットが含まれています。 JSF 2を使用している場合、クラスパスからrichfaces-impl-3.3.3.Final.jarを削除してください。

関連する問題