1

以前、jsf を使用して 2 人のユーザー向けの三目並べを作成する方法についてここに投稿したところ、この優れたタグライブラリである Primefaces へのリンクを取得しました。それは私がする必要があることには完全に完璧ですが、ウェブサイトから例をレンダリングすることでさえ、それを何かにしようとすることに固執しています.

だから私は私が見つけたこのチュートリアルに従っています (残念ながら、Primefaces に関するものはあまりありません): http://java.dzone.com/articles/primefaces-quickstart-tutorial ステップバイステップで、私は作成しましたすべてこのチュートリアルに従っていますが、実行すると毎回空のページがレンダリングされます。

そこで、公式ウェブサイトのより簡単な例を試してみました: http://www.primefaces.org/gettingStarted.html

これ (test.xhtml):

 <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:p="http://primefaces.org/ui">
    <h:head>
    </h:head>   
<h:body>    
<p:spinner />   
</h:body>
</html>

空のページをレンダリングしますが、これは次のとおりです。

 <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:p="http://primefaces.org/ui">
    <h:head>
    </h:head>   
<h:body>
test test test test
<p:spinner />   
</h:body>
</html>

「test test test test」テキストのみをレンダリングします。

したがって、問題はタグにあるに違いないと思います.Tomcatはそれらを認識しません/解釈する方法がわかりません. しかし、チュートリアルとprimefacesのWebサイトによると、私がする必要があるのは、私が行ったようにjarをWEB-INF/libに置くことだけです(ちなみに、私はEclipseを使用しており、作成した空のプロジェクトは「Dynamic Web.計画")。私の WEB-INF/lib には、次の jar があります。

jsf-api-2.0.3.jar

jsf-impl-2.0.3.jar

jstl-1.0.2.jar

primefaces-3.3.RC1.jar

お役に立てれば、Tomcat コンソールの内容は次のとおりです。

    2012-05-27 13:18:11 org.apache.catalina.core.AprLifecycleListener init
    INFO: The APR based Apache Tomcat Native library which allows optimal performance in                         production environments was not found on the java.library.path:         .:/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java
    2012-05-27 13:18:12 org.apache.tomcat.util.digester.SetPropertiesRule begin
    WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:Primefaces1' did not find a matching property.
    2012-05-27 13:18:12 org.apache.coyote.http11.Http11Protocol init
    INFO: Initializing Coyote HTTP/1.1 on http-8080
    2012-05-27 13:18:12 org.apache.catalina.startup.Catalina load
    INFO: Initialization processed in 1127 ms
    2012-05-27 13:18:12 org.apache.catalina.core.StandardService start
    INFO: Starting service Catalina
    2012-05-27 13:18:12 org.apache.catalina.core.StandardEngine start
    INFO: Starting Servlet Engine: Apache Tomcat/6.0.35
    2012-05-27 13:18:13 com.sun.faces.config.ConfigureListener contextInitialized
    INFO: Initializing Mojarra 2.0.3 (SNAPSHOT 20100726) for context '/Primefaces1'
    2012-05-27 13:18:17 org.primefaces.webapp.PostConstructApplicationEventListener processEvent
    INFO: Running on PrimeFaces 3.3.RC1
    2012-05-27 13:18:17 org.apache.coyote.http11.Http11Protocol start
    INFO: Starting Coyote HTTP/1.1 on http-8080
    2012-05-27 13:18:17 org.apache.jk.common.ChannelSocket init
    INFO: JK: ajp13 listening on /0.0.0.0:8009
    2012-05-27 13:18:17 org.apache.jk.server.JkMain start
    INFO: Jk running ID=0 time=0/63  config=null
    2012-05-27 13:18:17 org.apache.catalina.startup.Catalina start
    INFO: Server startup in 5096 ms

どのような場合がありますか?瓶を間違った場所に置いていますか、それはTomcatの失敗ですか、それともまったく別のものですか?

4

1 に答える 1

1

わかりました、私はそれを解決しました、多分誰かがいつかこれが役に立つと思うでしょう.

そのため、JSF で Primefaces を使用する場合、Web ページ ファイルに .xhtml 拡張子が必要なだけではありません (ここで見つけた解決策: http://www.coderanch.com/t/473437/JSF/java/not-allowed -template-text ) だけでなく、web.xml ファイルも変更する必要があります (ここで見つけた解決策: Simple primefaces application not working )、次のように:

<servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>*.xhtml</url-pattern>
</servlet-mapping>

今では完全にうまく機能します。

于 2012-05-27T12:25:50.187 に答える