过滤数据表中的 PropertyNotFoundException (PrimeFaces)
PropertyNotFoundException in filtered dataTable (PrimeFaces)
我有这个数据表:
<p:dataTable id="processes" var="process"
value="#{homeBean.processesList}"
filteredValue="#{homeBean.filteredProcesses}"
rowKey="#{process.pid}"
selection="#{homeBean.selectedProcesses}"
paginator="true"
rows="15"
paginatorTemplate="{FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink}"
rowsPerPageTemplate="5,10,15" >
<f:facet name="header">
<h:outputText value="Processes" />
</f:facet>
<p:column name="owner"
filterBy="#{process.owner}"
filterMatchMode="contains"
sortBy="owner"
headerText="#{homeBean.selectedLogicalServer.os eq 'Windows' ? 'User Name' : 'OWNER'}">
<h:outputText value="#{process.owner}" />
</p:column>
<p:column name="pid" filterBy="#{process.pid}" filterMatchMode="exact" sortBy="pid" headerText="PID">
<h:outputText value="#{process.pid}" />
</p:column>
<p:column name="ppid"
filterBy="#{process.ppid}"
filterMatchMode="exact"
sortBy="ppid"
headerText="#{homeBean.selectedLogicalServer.os eq 'Windows' ? 'Session Number' : 'PPID'}">
<h:outputText value="#{process.ppid}" />
</p:column>
<p:column name="c"
filterBy="#{process.c}"
filterMatchMode="exact"
sortBy="c"
headerText="#{homeBean.selectedLogicalServer.os eq 'Windows' ? '?' : 'C'}">
<h:outputText value="#{process.c}" />
</p:column>
<p:column name="stime"
filterBy="#{process.stime}"
filterMatchMode="contains"
sortBy="stime" headerText="#{homeBean.selectedLogicalServer.os eq 'Windows' ? '?' : 'STIME'}">
<h:outputText value="#{process.stime}" />
</p:column>
<p:column name="tty"
filterBy="#{process.tty}"
filterMatchMode="contains"
sortBy="tty"
headerText="#{homeBean.selectedLogicalServer.os eq 'Windows' ? 'Session Name' : 'TTY'}">
<h:outputText value="#{process.tty}" />
</p:column>
<p:column name="time"
filterBy="#{process.time}"
filterMatchMode="contains"
sortBy="time"
headerText="#{homeBean.selectedLogicalServer.os eq 'Windows' ? 'CPU TIME' : 'TIME'}">
<h:outputText value="#{process.time}" />
</p:column>
<p:column name="cmd"
filterBy="#{process.cmd}"
filterMatchMode="contains"
sortBy="cmd"
headerText="#{homeBean.selectedLogicalServer.os eq 'Windows' ? 'Image Name' : 'CMD'}">
<h:outputText value="#{process.cmd}" />
</p:column>
</p:dataTable>
问题:Property 'filteredProcesses' not recordable type for corp.gs.produban.atf.amp.mbeans.am.HomeBean
是 ProperyNotFoundException 之后的错误。
dataTable 包含所有信息,但我无法过滤。
我的 class 从这里开始:
@ManagedBean
@ViewScoped
public class HomeBean extends ManagedBeanBase implements Serializable {
这是 class 及其 setter 和 getter
中的属性
public List<LogicalServerProcess> filteredProcesses;
public List<LogicalServerProcess> getFilteredProcesses() {
return filteredProcesses;
}
public void setFilteredUsers(List<LogicalServerProcess> filteredProcesses) {
this.filteredProcesses = filteredProcesses;
}
有什么想法吗?
问题是 filteredProcesses setter 被命名为 setFilteredUsers
使用正确的名称,它可以正确运行
我有这个数据表:
<p:dataTable id="processes" var="process"
value="#{homeBean.processesList}"
filteredValue="#{homeBean.filteredProcesses}"
rowKey="#{process.pid}"
selection="#{homeBean.selectedProcesses}"
paginator="true"
rows="15"
paginatorTemplate="{FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink}"
rowsPerPageTemplate="5,10,15" >
<f:facet name="header">
<h:outputText value="Processes" />
</f:facet>
<p:column name="owner"
filterBy="#{process.owner}"
filterMatchMode="contains"
sortBy="owner"
headerText="#{homeBean.selectedLogicalServer.os eq 'Windows' ? 'User Name' : 'OWNER'}">
<h:outputText value="#{process.owner}" />
</p:column>
<p:column name="pid" filterBy="#{process.pid}" filterMatchMode="exact" sortBy="pid" headerText="PID">
<h:outputText value="#{process.pid}" />
</p:column>
<p:column name="ppid"
filterBy="#{process.ppid}"
filterMatchMode="exact"
sortBy="ppid"
headerText="#{homeBean.selectedLogicalServer.os eq 'Windows' ? 'Session Number' : 'PPID'}">
<h:outputText value="#{process.ppid}" />
</p:column>
<p:column name="c"
filterBy="#{process.c}"
filterMatchMode="exact"
sortBy="c"
headerText="#{homeBean.selectedLogicalServer.os eq 'Windows' ? '?' : 'C'}">
<h:outputText value="#{process.c}" />
</p:column>
<p:column name="stime"
filterBy="#{process.stime}"
filterMatchMode="contains"
sortBy="stime" headerText="#{homeBean.selectedLogicalServer.os eq 'Windows' ? '?' : 'STIME'}">
<h:outputText value="#{process.stime}" />
</p:column>
<p:column name="tty"
filterBy="#{process.tty}"
filterMatchMode="contains"
sortBy="tty"
headerText="#{homeBean.selectedLogicalServer.os eq 'Windows' ? 'Session Name' : 'TTY'}">
<h:outputText value="#{process.tty}" />
</p:column>
<p:column name="time"
filterBy="#{process.time}"
filterMatchMode="contains"
sortBy="time"
headerText="#{homeBean.selectedLogicalServer.os eq 'Windows' ? 'CPU TIME' : 'TIME'}">
<h:outputText value="#{process.time}" />
</p:column>
<p:column name="cmd"
filterBy="#{process.cmd}"
filterMatchMode="contains"
sortBy="cmd"
headerText="#{homeBean.selectedLogicalServer.os eq 'Windows' ? 'Image Name' : 'CMD'}">
<h:outputText value="#{process.cmd}" />
</p:column>
</p:dataTable>
问题:Property 'filteredProcesses' not recordable type for corp.gs.produban.atf.amp.mbeans.am.HomeBean
是 ProperyNotFoundException 之后的错误。
dataTable 包含所有信息,但我无法过滤。 我的 class 从这里开始:
@ManagedBean
@ViewScoped
public class HomeBean extends ManagedBeanBase implements Serializable {
这是 class 及其 setter 和 getter
中的属性public List<LogicalServerProcess> filteredProcesses;
public List<LogicalServerProcess> getFilteredProcesses() {
return filteredProcesses;
}
public void setFilteredUsers(List<LogicalServerProcess> filteredProcesses) {
this.filteredProcesses = filteredProcesses;
}
有什么想法吗?
问题是 filteredProcesses setter 被命名为 setFilteredUsers
使用正确的名称,它可以正确运行