Chamando o convert direto da Classe Java

2 respostas
2rogerio

E uma pergunta meio noob mais estou apanhando muito para isso.

tenho a classe:

public class CartaoVacina implements Serializable{
   
    
    private static final long serialVersionUID = 1L;
    
    private Integer idCartaoVacina;
    private Paciente paciente;

    public CartaoVacina() {
    }

tenho o convert

public class PacienteConvert implements Converter{
    
   
    /* Recebe o  uma string e retorna o objeto*/
    @Override
    public Object getAsObject(FacesContext fc, UIComponent uic, String value) {
         if(value != null && !value.isEmpty()){          
            
            
            Integer id = Integer.valueOf(value);
            PacienteDaoImpl pacienteDao = new PacienteDaoImpl();
            return pacienteDao.buscarporid(id);
        }
        
        return null;
    }
    
    /* Recebe o  objeto e retorna uma string*/
    @Override
    public String getAsString(FacesContext fc, UIComponent uic, Object object) {
        if (object instanceof Paciente) { 
            Paciente paciente = (Paciente) object;              
            return paciente.getIdPessoa().toString();
        }    
        return ""; 
    }
  
    
}

Estou precisando chamar o convert direto de uma classe Java, pois para inserir no banco com Hibernat e preciso resgatar somente o id...
não estou conseguindo ... alguma dica?

cartaoVacina.setPaciente(paciente.getIdPessoa());

2 Respostas

2rogerio

algum?

jhoamaral

Esse paciente vem da tela e um SelectOneMenu?
Se sim registre o converter no facesconfig e o use na tela, assim vc já vai ter o objeto no seu managedbean.
Se não explique melhor o que quer fazer?

Criado 23 de maio de 2013
Ultima resposta 29 de mai. de 2013
Respostas 2
Participantes 2