h:selectOneMenu & converter

UI Components for JSF
Post Reply
maximiliano
Posts: 18
Joined: 27 Apr 2011, 08:52

15 Oct 2011, 14:12

JSF 2.0 primefaces 2.2.1

i'm trying to use h:selectOneMenu with POJO. I dont know what is wrong but I;m getting this error: 'error de validacion: el error no es valido'
thank you
1 - registroAsuntos.xhtml

Code: Select all

<h:selectOneMenu id="cmbCategorias" value="#{beanAsuntos.dtca}" 
                                                 converter="catAsuntosConverter">
                                    <f:selectItems 
                                        value="#{beanAsuntos.selectCategorias}" 
                                        var="categoria"
                                        />    

                                </h:selectOneMenu>
2- beanAsuntos

Code: Select all

DTCategoriaAsunto dtca = new DTCategoriaAsunto();

    public DTCategoriaAsunto getDtca() {
        return dtca;
    }

    public void setDtca(DTCategoriaAsunto dtca) {
        this.dtca = dtca;
    }

public List<DTCategoriaAsunto> getSelectCategorias() {
        FacesMessage msg = null;
        RequestContext context = RequestContext.getCurrentInstance();
        List select = new ArrayList();
        try {
            List<DTCategoriaAsunto> cat = f.getAsuntos().listarCategoriaAsuntos();
            Iterator i = cat.iterator();
            while (i.hasNext()) {
                DTCategoriaAsunto DCat = (DTCategoriaAsunto) i.next();
                select.add(new SelectItem(DCat, DCat.getNombreTipo()));
            }
        } catch (Exception e) {

            logger.info("===================== ERROR!!! ===============" + e.getMessage());
            context.addCallbackParam("sucesso", false);
            msg = new FacesMessage("error en listar Categoría Asunto " + e.getMessage());
            msg.setSeverity(FacesMessage.SEVERITY_ERROR);
            FacesContext.getCurrentInstance().addMessage(null, msg);
        }
        return select;

    }
3- CategorizacionConverter

Code: Select all

package converters;

import beans.beanTareas;
import entCompartidas.DTCategoriaAsunto;
import java.util.logging.Logger;
import javax.faces.application.FacesMessage;
import javax.faces.bean.RequestScoped;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;
import javax.faces.convert.FacesConverter;
import logica.Factory;
import org.primefaces.context.RequestContext;

/**
 *
 * @author maxi
 */
@FacesConverter(forClass=DTCategoriaAsunto.class, value="catAsuntosConverter")
@RequestScoped
public class CategorizacionConverter implements Converter{
    private static final Logger logger = Logger.getLogger(beanTareas.class.getName());
    FacesMessage msg = null;
    RequestContext context = RequestContext.getCurrentInstance();
        
    Factory f=new Factory();
    DTCategoriaAsunto cat;

    public Object getAsObject(FacesContext fc, UIComponent uic, String string) {
        try{
           cat= f.getAsuntos().buscarCategorizacion(string);
        }catch(Exception e){
            logger.info("===================== ERROR!!! ===============" + e.getMessage());
            context.addCallbackParam("sucesso", false);
            msg = new FacesMessage("error en listar categoría Asunto " + e.getMessage());
            msg.setSeverity(FacesMessage.SEVERITY_ERROR);
            FacesContext.getCurrentInstance().addMessage(null, msg);
        }
        return cat;
    }

    public String getAsString(FacesContext fc, UIComponent uic, Object o) {
        DTCategoriaAsunto cat2=(DTCategoriaAsunto) o;
        return cat2.getNombreTipo();
    }
    
    
    
}
thankyou so much !!

Post Reply

Return to “PrimeFaces”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 52 guests