2

我正在使用 ap:dataTable来显示对象列表,我想通过它们的 Date 属性以降序方式对它们进行排序,代码如下:

<h:form id="receivablesForm"> 
    <p:dataTable id="receivablesTable" value="#{receivableManager.overdueReceivables}" var="receivable" rows="18" emptyMessage="#{msg['warning.noData']}" style="width: 585px;" sortBy="#{receivable.dueDate}" sortOrder="descending">
        <p:column sortBy="#{receivable.invoice.number}" styleClass="fixedSizeColumnSmall">
            <f:facet name="header">
                <h:outputText value="#{msg['label.number']}" />
            </f:facet>
            <h:outputText value="#{receivable.invoice.number}-#{receivable.number}" />
        </p:column>

        <p:column>
            <f:facet name="header">
                <h:outputText value="#{msg['label.clientName']}" />
            </f:facet>
            <h:outputText value="#{receivable.invoice.client.person.name}" />
        </p:column>

        <p:column styleClass="fixedSizeColumn">
            <f:facet name="header">
                <h:outputText value="#{msg['label.dueDate']}" />
            </f:facet>
            <h:outputText value="#{receivable.dueDate}" style="#{receivableManager.isOverdue(receivable) ? 'color: red' : ''}">
                <f:convertDateTime pattern="dd/MM/yyyy" />
            </h:outputText>
        </p:column>

        <p:column>
            <f:facet name="header">
                <h:outputText value="#{msg['label.amount']}" />
            </f:facet>
            <h:outputText value="#{receivable.amount}">
                <f:convertNumber type="currency" locale="pt_br" />
            </h:outputText>
        </p:column>
    </p:dataTable>
</h:form> 

然而,这些对象根本没有被订购。是否可以使用 sortBy 和 sortOrder 属性以降序方式按 Date 属性排序?

4

0 回答 0