gpt4 book ai didi

tomcat - Facelets:页面未呈现

转载 作者:行者123 更新时间:2023-11-28 23:50:58 29 4
gpt4 key购买 nike

我在 Tomcat 中使用 JSF 2 和 RichFaces。我是初学者,正在试用我找到的页面 here ,但页面只是空白(未呈现内容)。我尝试添加 Facelets 1.1 库,页面呈现没有问题。但是,我在某处读到,对于 JSF 2,Facelets 库不是必需的,因为它们默认包含在内。此外,当我添加 Facelets 库时,其他页面也会受到影响,我开始收到类似这样的消息"library supports namespace: http://java.sun.com/jsf/html , but no tag was defined for name: head" 对于没有库也能正常工作的页面。我还在/WEB-INF/lib 目录中包含了以下库:

  1. richfaces-api-3.3.3.Final.jar
  2. richfaces-impl-3.3.3.Final.jar
  3. richfaces-impl-jsf2-3.3.3.Final.jar
  4. richfaces-ui-3.3.3.Final.jar
  5. jSTL.jar
  6. 标准.jar

为简单起见,我的代码在这里(删除了一些部分,以免太长)。

注意:当我在 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>

最佳答案

您是否添加了 jsf 2.0 库?

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

然后像这样配置你的 web 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>

关于tomcat - Facelets:页面未呈现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8865822/

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