Jsf 素数面;can';无法获取picklist组件的目标列表
使用命令按钮提交表单时,无法获取目标列表值 以下是picklist的源初始化:Jsf 素数面;can';无法获取picklist组件的目标列表,jsf,primefaces,jsf-2.2,Jsf,Primefaces,Jsf 2.2,使用命令按钮提交表单时,无法获取目标列表值 以下是picklist的源初始化: public DualListModel<VehicleType> getVehicleTypeList() { List<VehicleType> source = new ArrayList<VehicleType>(); List<VehicleType> target = new ArrayList<VehicleType>()
public DualListModel<VehicleType> getVehicleTypeList() {
List<VehicleType> source = new ArrayList<VehicleType>();
List<VehicleType> target = new ArrayList<VehicleType>();
source = dao.getVehicleTypes(getLocale());
vehicleTypeList = new DualListModel<VehicleType>(source, target);
return vehicleTypeList;
}
提交此组件后,源值正常,但目标列表为空,即使我在xhtml页面中将数据从源传输到目标列表。如何获取目标列表值 您的问题缺少一些信息,比如支持bean的范围。另外,不要在getter中执行业务逻辑
// should be something like this (did not test it though)
public void onTransfer(final TransferEvent event) {
for (final Object each : event.getItems()) {
vehicleTypeList.getTarget().add(((VehicleType) each));
}
}
public void onTransfer(TransferEvent event) {
StringBuilder builder = new StringBuilder();
for(VehicleType type : vehicleTypeList.getTarget()) {
builder.append(type.getVehicleTypeName() + " ");
}
FacesMessage msg = new FacesMessage();
msg.setSeverity(FacesMessage.SEVERITY_INFO);
msg.setSummary("Items Transferred");
msg.setDetail(builder.toString());
FacesContext.getCurrentInstance().addMessage(null, msg);
}
// should be something like this (did not test it though)
public void onTransfer(final TransferEvent event) {
for (final Object each : event.getItems()) {
vehicleTypeList.getTarget().add(((VehicleType) each));
}
}