Java <;p:selectManyMenu返回数组列表大小0
Primefaces的selectMany组件有问题 我在selectManyMenu中检查了一些选项,但在bean Breservarista中返回数组列表大小0Java <;p:selectManyMenu返回数组列表大小0,java,jsf,primefaces,Java,Jsf,Primefaces,Primefaces的selectMany组件有问题 我在selectManyMenu中检查了一些选项,但在bean Breservarista中返回数组列表大小0 <p:selectManyMenu id="manyHoras" value="#{bReservarPista.horasCheckMarcadas}" converter="HoraCheckConverter" var="horaCheck" filte
<p:selectManyMenu id="manyHoras" value="#{bReservarPista.horasCheckMarcadas}" converter="HoraCheckConverter"
var="horaCheck" filter="true" filterMatchMode="contains" showCheckbox="true" style="height: 235px">
<f:selectItems value="#{bReservarPista.horasCheck}" var="horaCheck" itemLabel="#{horaCheck.label}" itemValue="#{horaCheck}" />
<p:column>
<h:outputText value="#{horaCheck.label}" />
</p:column>
</p:selectManyMenu>
谢谢请发布HoraCheckConverter的代码,可能就是这个原因。谢谢,我已经添加了yetPost和。。。问题总是在我身边,类不属于数据库解决方案简单,不使用转换器。
public void setHorasCheckMarcadas(ArrayList<HoraCheck> horasCheckMarcadas) {
this.horasCheckMarcadas = horasCheckMarcadas;
@FacesConverter("HoraCheckConverter")
public class HoraCheckConverter implements Converter{
@Override //Este método lo que hace es devolver un objeto buscado con un string value.
public Object getAsObject(FacesContext context, UIComponent component, String value) {
if(value != null && value.trim().length() > 0) {
try {
// el original de cine. se conectaba a ModeloBD. Podría hacer un ModeloBD aqui, o conectar con el dao
DaoHoraCheck daohoraCheck = new DaoImplHoraCheck();
HoraCheck cat= daohoraCheck.verHoraCheck(Integer.parseInt(value));
return cat;
} catch(NumberFormatException e) {
throw new ConverterException(new FacesMessage(FacesMessage.SEVERITY_ERROR, "Conversion Error", "Not a valid Cine."));
}
}
else {
return null;
}
}
@Override
public String getAsString(FacesContext context, UIComponent component, Object value) {
try {
if(value != null) {
return String.valueOf(((HoraCheck)value).getIdHoraCheck());
}
else {
return null;
}
}
catch (Exception e) {
return null;
}
}