Icefaces Actionlistener将参数传递给另一页

时间:2011-02-05 08:19:39

标签: jsf parameter-passing icefaces

我有icefaces数据表,当用户点击一行时,我想将该行的值传递给另一个页面。该值可以排成一列,即主键。我打算用

我该怎么做?

由于

* 跟进 **

请建议我遵循的方法是从我的冰面传递参数的权利 数据到另一页。

我在jsf页面中有以下内容

<h:commandLink actionListener="#{bean.setSelectedItem}">

在我的setSelectedItem(ActionEvent事件)方法的bean中,我有以下代码

 selectedRows.put(dataTable.getRowIndex(), true);  
 (selectedRows is of Map<Integer, Boolean> selectedRows = new HashMap<Integer, Boolean>();
 List<class> selectItems = new ArrayList<class>();
             for (int index = 0; index < dataList.size(); index++) {                
                if (isSelectedRow(index)) {
                    selectItems.add(dataList.get(index));
                }
            }
            newbean.method(selectItems);
            selectItems.clear();
            selectedRows.clear();

如果我在上面做错了,请纠正我。

由于

1 个答案:

答案 0 :(得分:3)

将表组件与支持bean中的UIData属性绑定

<h:dataTable binding="#{bean.table}">

private UIData table;

或将表值与支持bean中的DataModel属性绑定

<h:dataTable value="#{bean.model}">

private DataModel model;

无论哪种方式,它们都提供了一个getRowData()方法,该方法在bean动作方法中为您提供行回溯,其中UICommand组件被单击/按下。

<h:commandLink action="#{bean.view}">

public String view() {
    Object rowData = table.getRowData(); // Or model.getRowData();
    return "otherpage";
}