有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何向jsf页面添加richfaces标记?

我正在http://livedemo.exadel.com/richfaces-demo/richfaces/scrollableDataTable.jsf?tab=usage&cid=40889上学习教程和示例,并使用richfaces 4.0。现在我正在尝试创建一个可滚动的数据表。我将示例代码插入到我的jsf页面。这是:

<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>
        .scrolls{
            width:300px;
            height:200px;
            overflow:auto;
        }
    </style>    
    <h:form>
        <rich:spacer height="30" />
        <rich:scrollableDataTable rowKeyVar="rkv" frozenColCount="1" height="400px" 
            width="700px" id="carList" rows="40" columnClasses="col"
            value="#{dataTableScrollerBean.allCars}" var="category" sortMode="single"
            sortOrder="#{dataTableScrollerBean.order}"
            selection="#{dataTableScrollerBean.selection}">

            <rich:column id="make">
                <f:facet name="header"><h:outputText styleClass="headerText" value="Make" /></f:facet>
                <h:outputText value="#{category.make}" />
            </rich:column>
            <rich:column id="model">
                <f:facet name="header"><h:outputText styleClass="headerText" value="Model" /></f:facet>
                <h:outputText value="#{category.model}" />
            </rich:column>
            <rich:column id="price">
                <f:facet name="header"><h:outputText styleClass="headerText" value="Price" /></f:facet>
                <h:outputText value="#{category.price}" />
            </rich:column>
            <rich:column id="mileage">
                <f:facet name="header"><h:outputText styleClass="headerText" value="Mileage" /></f:facet>
                <h:outputText value="#{category.mileage}" />
            </rich:column>
            <rich:column width="200px" id="vin">
                <f:facet name="header"><h:outputText styleClass="headerText" value="VIN" /></f:facet>
                <h:outputText value="#{category.vin}" />
            </rich:column>
            <rich:column id="stock">
                <f:facet name="header"><h:outputText styleClass="headerText" value="Stock" /></f:facet>
                <h:outputText value="#{category.stock}" />
            </rich:column>
        </rich:scrollableDataTable>
        <rich:spacer height="20px"/>
        <a4j:commandButton value="Show Current Selection" reRender="table" 
            action="#{dataTableScrollerBean.takeSelection}" 
            oncomplete="javascript:Richfaces.showModalPanel('panel');"/>
    </h:form>
    <rich:modalPanel id="panel" autosized="false" keepVisualState="false" width="315" height="230">
            <f:facet name="header">
                <h:outputText value="Selected Rows"/>
            </f:facet>
            <f:facet name="controls">
                <span style="cursor:pointer" onclick="javascript:Richfaces.hideModalPanel('panel')">X</span>
            </f:facet>
        <h:panelGroup layout="block" styleClass="scrolls">
        <rich:dataTable value="#{dataTableScrollerBean.selectedCars}" var="sel" id="table">
            <rich:column>
                <f:facet name="header"><h:outputText value="Make" /></f:facet>
                <h:outputText value="#{sel.make}" />
            </rich:column>
            <rich:column id="model">
                <f:facet name="header"><h:outputText value="Model" /></f:facet>
                <h:outputText value="#{sel.model}" />
            </rich:column>
            <rich:column id="price">
                <f:facet name="header"><h:outputText value="Price" /></f:facet>
                <h:outputText value="#{sel.price}" />
            </rich:column>
            <rich:column id="mileage">
                <f:facet name="header"><h:outputText value="Mileage" /></f:facet>
                <h:outputText value="#{sel.mileage}" />
            </rich:column>
            <rich:column id="stock">
                <f:facet name="header"><h:outputText value="Stock" /></f:facet>
                <h:outputText value="#{sel.stock}" />
            </rich:column>
        </rich:dataTable>
        </h:panelGroup>
    </rich:modalPanel>
</ui:composition>

问题是,netbeans说

The component library http://richfaces.org/rich does not contain component scrollableDataTable

要解决这个问题,我想我需要添加org。富有的面孔。塔格里布。滚动DataTableTag标签到页面。但我不知道如何向jsf页面添加标记。我试过:

<ui:composition xlmns:u="org.richfaces.taglib.ScrollableDataTableTag">

但它给出了一个错误,即:

Fatal Error: Open quote is expected for attribute "{1}" associated with an  element type  "xlmns:u".

来自第14行第9列;第14行第33列

Further processing of the file may be significantly affected by this fatal error. Please fix the problem before continuing editing of this file!

Undeclared component xlmns:u=org.richfaces.taglib.ScrollableDataTableTag"

那个么我如何添加这个标签,或者我必须做另一件事来使用可滚动的数据表呢?有人能帮忙吗

谢谢


共 (1) 个答案

  1. # 1 楼答案

    正如Alexandre Lavoie所说,这是因为不同的版本,它现在正在工作