gpt4 book ai didi

java - 从 rich :datatable binding table 获取行

转载 作者:行者123 更新时间:2023-11-30 11:48:08 24 4
gpt4 key购买 nike

我正在使用 java 6 jsf 1.2 和 richfaces 3.3.3当我在绑定(bind)的 UIDataTable 上调用函数 getRowData 时

public void priorityChanged(ValueChangeEvent event) {
Task currentTask = (Task) table.getRowData();

<h:selectOneMenu id="id182_#{rkv}" value="#{dataItem.priority}"
valueChangeListener="#{customerAdminHandler.priorityChanged}"
onchange="submit()">
<f:selectItems value="#{customerAdminHandler.priorityTypes}" />
</h:selectOneMenu>

我在 table.getRowData() 上得到一个异常;

java.lang.IllegalArgumentException
at javax.faces.model.ListDataModel.getRowData(ListDataModel.java:150)
at org.ajax4jsf.model.SequenceDataModel.getRowData(SequenceDataModel.java:147)
at org.ajax4jsf.component.UIDataAdaptorBase.getRowData(UIDataAdaptorBase.java:257)

最佳答案

我用

绕过了这个问题
<f:setPropertyActionListener value="#{dataItem}"
target="#{customerProductsHandler.currentApp}" />

而不是绑定(bind)表。相同的代码在干净的环境中对我有用,所以我猜是某种 jar 问题。

无论如何,为了将来引用,我发现以下信息对使用绑定(bind)表很有用

Richfaces 3.3 uses:
org.richfaces.component.html.HtmlDataTable

Richfaces 4 uses:
org.richfaces.component.UIDataTable

jsf1.2 uses:
javax.faces.component.html.HtmlDataTable;

jsf 2 uses:
import javax.faces.model.DataModel;

关于java - 从 rich :datatable binding table 获取行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9000092/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com