我正在使用Primefaces的PickList,如下所示:
在xhtml中...
<p:pickList valueChangeListener="#{bean.handlePickList}" onTransfer="submit()" value="#{bean.currentField.PICK_VALUES" id="myPickVals" var="pickVals" itemLabel="#{pickVals}" itemValue="#{pickVals}"/>在豆子里...
public class MyFields{
public void handlePickList(ValueChangeEvent e) {
System.out.println("in handlePickList routine of MyFields.java. ");
}
}我收到错误信息...
Property 'handlePickList' not found on type com.myproj.common.MyFields如何从PickList的目标列表中获取用户选择的值?
发布于 2012-01-21 04:27:52
每个showcase example
提供给列表的值必须放在primeface的DaulListModel中。
在你的bean中:
private DualListModel<yourObjectType> listItems;
public DualListModel<yourObjectType> getListItems() {
if(listItems == null){
List<yourObjectType> listItemsSource = new ArrayList<yourObjectType>();
List<yourObjectType> listItemsTarget = new ArrayList<yourObjectType>();
... populate the source and target accordingly ...
listItems= new DualListModel<yourObjectType>(listItemsSource , listItemsTarget );
}
return listItems;
}
public void setListItems(DualListModel<yourObjectType> listItems) {
this.listItems = listItems;
}将listItems放入jsf标记的值属性中
value="#{bean.listItems}"在提交时,只需访问选定的列表项,如下所示:
getListItems().getTarget()仅供参考,您可能需要创建并提供一个转换器来处理您想要的对象类型。
https://stackoverflow.com/questions/8757099
复制相似问题