Converter

Converter los usamos con los autocomplete, selectOneMenu

RolConverter.java

import com.avbravo.jmoordbarchetypeejb.entity.Rol;
import com.avbravo.jmoordbarchetypeejb.repository.RolRepository;
import com.avbravo.jmoordbutils.JsfUtil;
import java.util.Optional;
import javax.enterprise.context.RequestScoped;
import javax.inject.Inject;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;
import javax.inject.Named;

/**
 *
 * @author avbravo
 */
@Named
@RequestScoped
public class RolConverter implements Converter {

    @Inject
    RolRepository rolRepository;

    @Override
    public Object getAsObject(FacesContext facesContext, UIComponent uiComponent, String s) {
        Rol rol = new Rol();
        try{
            if(!s.equals("null")){
               Rol b = new Rol();
               b.setIdrol(s);
               Optional<Rol> optional = rolRepository.findById(b);
               if (optional.isPresent()) {
               rol= optional.get();  
               }   
             }
          } catch (Exception e) {
             JsfUtil.errorMessage("getAsObject()" + e.getLocalizedMessage());
          }
          return rol;
      }


    @Override
    public String getAsString(FacesContext facesContext, UIComponent uiComponent, Object o) {
        String r = "";
        try {
            if (o instanceof Rol) {
                Rol rol = (Rol) o;
                r = String.valueOf(rol.getIdrol());
            }else if (o instanceof String) {
               r = (String) o;
            }
        } catch (Exception e) {
            JsfUtil.errorMessage("getAsString()" + e.getLocalizedMessage());
        }
        return r;
        }



}

UsuarioConverter.java

import com.avbravo.jmoordbarchetypeejb.entity.Usuario;
import com.avbravo.jmoordbarchetypeejb.repository.UsuarioRepository;
import com.avbravo.jmoordbutils.JsfUtil;
import java.util.Optional;
import javax.enterprise.context.RequestScoped;
import javax.inject.Inject;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;
import javax.inject.Named;

/**
 *
 * @author avbravo
 */
@Named
@RequestScoped
public class UsuarioConverter implements Converter {

    @Inject
    UsuarioRepository usuarioRepository;

    @Override
    public Object getAsObject(FacesContext facesContext, UIComponent uiComponent, String s) {
        Usuario usuario = new Usuario();
        try{
            if(!s.equals("null")){
               Usuario b = new Usuario();
               b.setUsername(s);
               Optional<Usuario> optional = usuarioRepository.findById(b);
               if (optional.isPresent()) {
               usuario= optional.get();  
               }   
             }
          } catch (Exception e) {
             JsfUtil.errorMessage("getAsObject()" + e.getLocalizedMessage());
          }
          return usuario;
      }


    @Override
    public String getAsString(FacesContext facesContext, UIComponent uiComponent, Object o) {
        String r = "";
        try {
            if (o instanceof Usuario) {
                Usuario usuario = (Usuario) o;
                r = String.valueOf(usuario.getUsername());
            }else if (o instanceof String) {
               r = (String) o;
            }
        } catch (Exception e) {
            JsfUtil.errorMessage("getAsString()" + e.getLocalizedMessage());
        }
        return r;
        }



}

Last updated

Was this helpful?