Ajuda no seam [Could not instantiate Seam component]
4 respostas
J
JbossMan
Boa tarde pessoal,
Criei um projeto básico usando o Seam. Esse projeto é o que é criado pelo plugin do jboss tools.
Então eu tenho um projeto web, um projeto ejb, um ear e um projeto de teste.
Criei minhas entidades e os meus EJBs no projeto EJB.
E quando criei managedBeans do projeto web, teto acessar os EJBs por eles, mas o erro
"Could not instantiate Seam component" me é apresentado.
Já tentei anotar os EJB com @Name, já tentei inicialos com @In e @EJB e nada funciona…
Alguém pode me dar uma ajuda? Achei aqui no forum algumas pessoas que já passaram por
esses problemas, mas não achei solução…
Esse é o meu componentes Seam que acesso o meu EJB a cima:
@Name("usuarioMB")@Scope(ScopeType.CONVERSATION)publicclassUsuarioMBimplementsSerializable{privatestaticfinallongserialVersionUID=2162523338663188098L;privateUsuariousuario;@InprivateUsuarioEJBusuarioEJB;publicStringinserir(){usuarioEJB.inserir(usuario);setUsuario(null);returnnull;}publicUsuarioalterar(){setUsuario(null);returnnull;}/* * Getters e Setters ***/@Begin(join=true)publicUsuariogetUsuario(){if(this.usuario==null){this.usuario=newUsuario();}returnusuario;}publicvoidsetUsuario(Usuariousuario){this.usuario=usuario;}}
O Erro "Could not instantiate Seam component: usuarioEJB " me é apresentado ao tentar startar o servidor jboss 5.
VLW PELA ATENÇÃO!
D
Danilo_Carvalho
Então, eu uso de outra forma, outra vez posso te passar.
Mas olhando rapidamente tenta fazer o seguinte:
@In(create=true)privateUsuarioEJBusuarioEJB;
O seam trabalha com um sistema de bijeção, quando voce da somente um @In quer dizer que eu outra classe voce ja criou e fez um @Out, pode ser isto, testa e me diz se funcionou.
Se não vou olhar de novo o código…
Até mais.
J
JbossMan
Carvalho;
Bom o erro que mencionei antes parou de acontecer. Contudo, um outro está ocorrendo: “coud not set fild value by reflection UsuarioEJB”.
Somente fiz a alteraçaõ que pediu.