Criteria e Hibernate

Olá a todos!

Tenho o sehuinte trecho de código:


List animal = session.createCriteria(Animal.class).setFetchMode("finalidade",FetchMode.EAGER).list()

[code]

public Object getValueAt(int rowIndex, int columnIndex){
Animal animal = (Animal) linhas.get(rowIndex);
Finalidade finalidade = (Finalidade)linhas.get(rowIndex);

	switch(columnIndex) {
		case 0: return animal.getNumInterno();
		case 1: return animal.getNumExterno();
		case 2: return animal.getSexo();
		case 3: return animal.getDataNascimento();
		case 4: return animal.getEspecie();
		case 5: return animal.getFinalidade();
		case 6: return animal.getNomeMae();
		case 7: return animal.getNomePai();
		case 8: return animal.getProprietario();
		case 9: return animal.getRaca();
		case 10: return animal.getTipo();
	        case 11: return finalidade.getDoadorEmbriao();
		
	}
	return null;
	 
 }

 [/code]

Quero fazer com que os campos da classe finalidade sejam mostrados em uma Jtable também. Acontece que quando utilizo somente a classe animal não dá problemas, mas quando utilizo as duas classes ele retorna o erro: " Animal cannot cast to Finalidade"…alguém pode me ajudar?

Até mais

Patty

Mas o que tem na lista

linhas.get(rowIndex)

?

Animal ou Finalidade?

Pode ter as duas classes neh?

Entao tu vai ter que fazer um instanceof antes para descobrir o tipo que retorna em

linhas.get(rowIndex)

Um Animal possui um objeto Finalidade. Isso?

isso

se seu objeto Animal possui uma referência a um objeto Finalidade, faça o seguinte:

public Object getValueAt(int rowIndex, int columnIndex){
 		Animal animal = (Animal) linhas.get(rowIndex);
 		
 		switch(columnIndex) {
 			case 0: return animal.getNumInterno();
 			case 1: return animal.getNumExterno();
 			case 2: return animal.getSexo();
 			case 3: return animal.getDataNascimento();
 			case 4: return animal.getEspecie();
 			case 5: return animal.getFinalidade();
 			case 6: return animal.getNomeMae();
 			case 7: return animal.getNomePai();
 			case 8: return animal.getProprietario();
 			case 9: return animal.getRaca();
 			case 10: return animal.getTipo();
 		        case 11: return animal.getFinalidade.getDoadorEmbriao();
 			
 		}
 		return null;
 		 
 	 }

Obrigada Luiz Gustavo…funcionou…obrigada a todos!!!

Até mais

Patty