gpt4 book ai didi

jsf - tomcat 上的 Primefaces 标记库,从有效的 jsp 文件呈现空白页面

转载 作者:行者123 更新时间:2023-11-28 22:22:30 25 4
gpt4 key购买 nike

我之前在这里发布了关于如何使用 jsf 为两个用户制作井字游戏的文章,我得到了这个很棒的标签库 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 网站,我需要做的就是像我所做的那样将 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

会是什么情况?我是不是把 jar 放错了地方,是 tomcat 故障还是完全是其他原因?

最佳答案

好的,我解决了它,也许有一天会有人发现它有用。

因此,当将 Primefaces 与 JSF 一起使用时,不仅网页文件必须具有 .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>

现在它运行良好。

关于jsf - tomcat 上的 Primefaces 标记库,从有效的 jsp 文件呈现空白页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10773694/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com