[Logo] Neo Framework Forum
  [Search] Busca   [Recent Topics] Tópicos Recentes   [Members]  Lista de Usuários   [Groups] De volta para a página principal 
[Register] Registrar / 
[Login] Entrar 
Problema com anotação  XML
Índice dos Fóruns -> Dúvidas
Autor Mensagem
tulio
Equipe

Membro desde: 21/06/2007 12:35:50
Mensagens: 16
Offline

Pessoal,

apareceu um problema estranho aqui.

Já detectei quando o problema acontece, tenho uma classe abstrata, quando mais de uma classe (que tenha anotação @BEAN) extende essa classe, aparece a mensagem na console: SEVERE: Error listenerStart.

Alguém sabe como resolver esse problema

[Email] [MSN]
rogel.garcia
Xiita

Membro desde: 17/04/2007 16:35:03
Mensagens: 275
Offline

Fala Tulio bao??

Vamos supor que voce tenha a seguinte situação:
Code:
 @Bean
 class MinhaSuperclasse {
 }
 
 @Bean
 class MinhaSubClasseA {
 }
 
 @Bean
 class MinhaSubClasseB {
 }
 
 @Bean
 class Injecao {
     private MinhaSuperclasse minhaSuperclasse;
 
     public void setMinhaSuperclasse(MinhaSuperclasse obj){
          this.minhaSuperclasse = obj;
     }
 }
 


O Spring não conseguirá saber se ele tem que injetar na classe Injecao, um objeto MinhaSuperclasse, MinhaSubClasseA ou MinhaSubClasseB.
Para indicar qual é o objeto desejado, voce deve utilizar a anotação @Ref da seguinte forma:

Code:
 @Bean
 class Injecao {
     private MinhaSuperclasse minhaSuperclasse;
     
     @Ref("minhaSubClasseB") //Será injetado um objeto da classe MinhaSubClasseB
     public void setMinhaSuperclasse(MinhaSuperclasse obj){
          this.minhaSuperclasse = obj;
     }
 }
 


Qualquer duvida é só falar...

Até mais
tulio
Equipe

Membro desde: 21/06/2007 12:35:50
Mensagens: 16
Offline

RÓGELWARE GARCIA,

você é o cara. Acertei os esquemas aqui, era isso mesmo.

Só que fiz te outra forma, assim:

Code:
 public BEAN getBean(){
 		
 		if(bean == null){
 			Class<BEAN> beanClass;
 			
 			Class[] classes =  Util.generics.getGenericTypes2(this.getClass());
 			beanClass = classes[0];
 			bean = Neo.getObject(beanClass);
 		}		
 		return bean;
 	}
 


Obrigado ai pela prontidão.

Fico te devendo outro milk shake de ovomaltine.

Abraço.

[Email] [MSN]
 
Índice dos Fóruns -> Dúvidas
Ir para:   
Powered by JForum 2.1.7 © JForum Team