我正在开发一个项目,我需要将JBoss服务器(Wildfly)与JSF + RichFaces一起使用。 我可以运行普通的JSF,但是当我添加一些RichFaces组件时,它不会显示在网页上(只有RichFaces组件没有显示!) 我也收到了这个警告:
警告:此页面调用XML命名空间http://richfaces.org/rich 声明前缀丰富但该命名空间不存在taglibrary。
我是否需要更改faces-config.xml或web.xml,因为我没有触及这两个文件,使用IntelliJ IDEA生成的默认值。
这是我的JSF文件:
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:a4j="http://richfaces.org/a4j"
xmlns:rich="http://richfaces.org/rich">
<h:body>
<h3>Followers:</h3>
<h:form>
<h:selectOneListbox value="#{helloBean.user}">
<f:selectItems value="#{helloBean.users}" />
</h:selectOneListbox>
</h:form>
<h3>Following:</h3>
<h:form>
<h:selectOneMenu id="users" value="#{helloBean.user}">
<f:selectItems value="#{helloBean.users}" />
</h:selectOneMenu>
<h:commandButton value="Unfollow">
<f:ajax execute="users" render="output" />
</h:commandButton>
<h2><h:outputText id="output" value="#{helloBean.sayWelcome}" /></h2>
</h:form>
<h3>Users:</h3>
<h:form id="form">
<h:panelGrid columns="2" columnClasses="cols,cols" width="400">
<rich:panelMenu style="width:200px" itemMode="ajax" groupMode="ajax" groupExpandedLeftIcon="triangleUp"
groupCollapsedLeftIcon="triangleDown" topGroupExpandedRightIcon="chevronUp"
topGroupCollapsedRightIcon="chevronDown" itemLeftIcon="disc" itemChangeListener="#{panelMenuBean.updateCurrent}">
<rich:panelMenuGroup label="Group 1">
<rich:panelMenuItem label="Item 1.1" name="Item_1_1" />
<rich:panelMenuItem label="Item 1.2" name="Item_1_2" />
<rich:panelMenuItem label="Item 1.3" name="Item_1_3" />
</rich:panelMenuGroup>
<rich:panelMenuGroup label="Group 2">
<rich:panelMenuItem label="Item 2.1" name="Item_2_1" />
<rich:panelMenuItem label="Item 2.2" name="Item_2_2" />
<rich:panelMenuItem label="Item 2.3" name="Item_2_3" />
<rich:panelMenuGroup label="Group 2.4">
<rich:panelMenuItem label="Item 2.4.1" name="Item_2_4_1" />
<rich:panelMenuItem label="Item 2.4.2" name="Item_2_4_2" />
<rich:panelMenuItem label="Item 2.4.3" name="Item_2_4_3" />
</rich:panelMenuGroup>
<rich:panelMenuItem label="Item 2.5" name="Item_2_5" />
</rich:panelMenuGroup>
<rich:panelMenuGroup label="Group 3">
<rich:panelMenuItem label="Item 3.1" name="Item_3_1" />
<rich:panelMenuItem label="Item 3.2" name="Item_3_2" />
<rich:panelMenuItem label="Item 3.3" name="Item_3_3" />
</rich:panelMenuGroup>
</rich:panelMenu>
<a4j:outputPanel ajaxRendered="true">
<rich:panel rendered="#{not empty panelMenuBean.current}">
<h:outputText value="#{panelMenuBean.current} selected" id="current" />
</rich:panel>
</a4j:outputPanel>
</h:panelGrid>
</h:form>
</h:body>
</ui:composition>
答案 0 :(得分:0)
WildFly包含基于Mojarra的JSF 2.2.x实现。 Rich faces 4.5可以为JSF 2.2提供支持
Rich faces 4.5.0 Final最近发布。详情请见4.5.0 Final
您需要升级到Rich faces 4.5