Vlidação

4 respostas
A

alguem sabe como eu valido esse método…eu queria q ele se não retornase na da daria um mensagen de erro…

DAO<Animal> dao = new DAO<Animal>(Animal.class); dao.setSession(HibernateUtil.openSession()); int codigo; codigo = Integer.parseInt(jBrinco.getText().trim()); Object objeto = dao.load(codigo); Animal animal = (Animal)objeto; jAnimal.setText(animal.getNome());

4 Respostas

juliano_FRG

De qual dos métodos você está falando?

Giulliano

Eu acho q ele esta se referindo ao DAO (presumo…rss)

Vc pode criar uma Exception no seu DAO do tipo BusinessException…

ficaria :

class BusinessException extends Exeption{

}

public Animal load(Serializabe id) throws BusinessException{
if(resultadoDaConsulta == null){
throws new BusinessException("Nenhum Registro encontrado");
}
}

e por fim :

Object objeto = null;
try{
objeto = dao.load(codigo);   
Animal animal = (Animal)objeto;   
jAnimal.setText(animal.getNome());  
}catch(BusinessException be){
jAnimal.setText(be.getMessage());  
}

pode não ser o melhor jeito…depende do que vc realmente precisa…

[]'s

Marky.Vasconcelos

O método load da classe Session do hibernate lança uma Exception caso não tenha nenhum objeto com esse id.

Então um try/catch serviria.

DAO<Animal> dao = new DAO<Animal>(Animal.class);   
    dao.setSession(HibernateUtil.openSession());   
    int codigo;   
    codigo = Integer.parseInt(jBrinco.getText().trim()); 
    Object objeto = null;
    try{
    objeto = dao.load(codigo);   
    }catch(RuntimeException e){
    JOptionPane.showMessageDialog(null,"Nenhum animal encontrado");
     return;
    }
    //Se passou do catch significa que o objeto não é null
    Animal animal = (Animal)objeto;   
    jAnimal.setText(animal.getNome());
Marky.Vasconcelos

PS:

O método load já retorna um objeto do tipo passado no generics… então voce pode associar direto a um animal e não depois fazer um cast

DAO<Animal> dao = new DAO<Animal>(Animal.class);   
    dao.setSession(HibernateUtil.openSession());   
    int codigo;   
    codigo = Integer.parseInt(jBrinco.getText().trim()); 
    Animal animal = null;
    try{
    animal = dao.load(codigo);   
    }catch(RuntimeException e){
    JOptionPane.showMessageDialog(null,"Nenhum animal encontrado");
     return;
    }
    //Se passou do catch significa que o objeto não é null 
    jAnimal.setText(animal.getNome());
Criado 6 de dezembro de 2008
Ultima resposta 8 de dez. de 2008
Respostas 4
Participantes 4