【发布时间】:2015-01-14 11:14:15
【问题描述】:
我的 XHTML 中有一个<p:dataTable>,我想按位置整数对其进行排序。然而,我已经检查过了,getPlace() 没有被调用。
<p:dataTable value="#{factoryReturnGeneralBean.awaitingInWorkShop}"
id="awaitingInWorkShopTable" var="factoryReturn"
sortBy="#{factoryReturn.place}">
<p:column style="background-color: #{factoryReturn.col}">
<f:facet name="header">
<h:outputText value="Cal Number"/>
</f:facet>
<h:outputText value="CAL#{factoryReturn.calnum}"/>
</p:column>
<p:column style="width: 10%" >
<f:facet name="header">
<h:outputText value="In Workshop Date"/>
</f:facet>
<h:outputText value="#{factoryReturn.bookedInDate}">
<f:convertDateTime pattern="dd/MM/yyyy"/>
</h:outputText>
</p:column>
</p:dataTable>
方法是
公共 int getPlace() { this.place = 位置(); 返回这个地方; }
public int placement() {
setColours();
if (this.priority == 'h') {
return 0;
}
if (this.priority == 'm') {
return 1;
}
if (this.priority == 'l') {
return 2;
} else {
return 3;
}
}
知道为什么当我在getPlace() 内断点时,当factoryReturn 类中的所有其他方法都以相同的方式制作和使用但工作时,它不会受到打击?
编辑:
使用 PrimeFaces 3.0
【问题讨论】:
-
你忘了告诉 PrimeFaces 版本。您是否检查过与您正在使用的特定 PrimeFaces 版本相关的 PrimeFaces 用户指南? PrimeFaces 版本的情况发生了变化,目前的展示仅代表 5.1。
-
不管在互联网上找到了一些答案/解决方法,
<p:dataTable>开箱即用提供的初始排序顺序对我来说从来没有用过,尤其是多排序,因为我从它的版本开始3.0(即使在 PrimeFaces 5.1 中也没有)。我只是在整个应用程序中一直在丢弃/避免它,从那时起就再也没有想过。 (如果我错过了一些非常基本的东西,我一点也不感到惊讶)。
标签: sorting jsf primefaces datatable