我有一个选择列表,每次使用时都需要提供一个值,并且在未输入值时required
我使用它来显示一条消息。requiredMessage
但是它们都不适用于我的选择列表,如下所示:
<p:pickList value="#{parameterValueDialog.selectedModelSeries}"
var="item" itemValue="#{item}" required="true"
converter="pickListConverter" requiredMessage="#{msg.validation_message}">
有谁知道如何解决这个问题?这是 Primefaces 库本身的问题吗?
编辑:发布getAsObject()
方法
@Override
public final Object getAsObject(final FacesContext ctx, final UIComponent component, final String string) {
Object returnObject = null;
Object dualList = ((PickList) component).getValue();
DualListModel<Item<?>> listModel = (DualListModel<NamedItem<?>>) dualList;
for (Item<?> item : listModel.getSource()) {
String id = String.valueOf(item.getId());
if (string.equals(id)) {
returnObject = item;
break;
}
}
if (returnObject == null) {
for (Item<?> item : listModel.getTarget()) {
String id = String.valueOf(item.getId());
if (string.equals(id)) {
returnObject = item;
break;
}
}
}
return returnObject;
}