i forget of say that listfiletr is a SelectItem[] whith value= a object and
whith label a objectname

thanks

2008/11/12 alvaro tovar <[EMAIL PROTECTED]>

> hello
>
> maybe some one know this, i need have a list o objects merge with other
> action selects, my idea is do sometinhg like
>
>  <h:selectOneMenu value="#{reoffermanager.interestSelected}"
> id="selectFilter"
>                           style="font-family: Verdana, Arial, Helvetica,
> sans-serif; font-size: 12px;"
> valueChangeListener="#{reoffermanager.changeFilter}"
>                           onchange="submit();">
>                               <f:selectItems
> value="#{reoffermanager.listFilter}"/>
>
>                             <f:selectItem itemValue="-1" itemLabel="Filtros
> disponibles" itemDisabled="true"/>
>                             <f:selectItem itemValue="-2"
> itemLabel="Filtro"/>
>                             <f:selectItem itemValue="-7" itemLabel="Ocultar
> descartados"/>
>                             <f:selectItem itemValue="-8"
> itemLabel="Funciones para filtros" itemDisabled="true"/>
>                             <f:selectItem itemValue="-9" itemLabel="Nuevo
> Filtro"/>
>
>                           </h:selectOneMenu>
>
> the list of selectitems i need to load some change in the
> valueChangeListener="#{reoffermanager.changeFilter}" if i select some of
> this no problem, but when i select other of the selectitem i have this error
>  j_id_id104:selectFilter: Error de Validación: Valor no es correcto.
> j_id_id104:selectFilter: Error de Validación: Valor no es correcto. i 'am
> using this converter mi idea is that when i select a selectitem, the
> returned value was a new object whith the id of the itamvalue has, <0.
>
> public class InterestConverter implements Converter{
>
>
>
>
>     public final Object getAsObject(final FacesContext context,
>             final UIComponent component, final String value) {
>                 ConstantManager constantsManager=(ConstantManager)
> context.getApplication().getELResolver().getValue(
>                         context.getELContext(),
>                         null,"constantManager"
>                         );
>                 if(value==null)
>                 {
>                     return null;
>                 }
>
>                 Integer id=Integer.valueOf(value);
>         Interest inter=constantsManager.getInterestById(id);
>                 if(inter!=null)
>                 {
>                     return inter;
>                 }
>
>                 inter= new Interest();
>                 inter.setInterestedId(id);
>                 return inter;
>     }
>
>     public final String getAsString(final FacesContext context,
>             final UIComponent component, final Object object) {
>             if(object==null)
>             {
>                 return null;
>             }
>
>             if(object instanceof Interest)
>             {
>                 Interest constant=(Interest) object;
>                 return constant.getInterestedId().toString();
>             }else if(object instanceof Integer)
>             {
>                 Integer idAux=(Integer) object;
>
>                 return idAux.toString();
>             }else if(object instanceof String)
>             {
>                 return (String) object;
>             }else
>             {
>                 throw new IllegalArgumentException("object:
> "+object.getClass().getName()+ " no es constante");
>             }
>     }
>
>
> will be great if some one can help me
>
> thanks
>

Reply via email to