Fórum Erro em deploy em JBoss-5.1.0.GA. #12537
03/12/2009
0
Leonardo
Curtir tópico
+ 0Posts
04/12/2009
Henrique Weissmann
também nunca havia visto este erro, sendo assim, comecei a fazer algumas pesquisas para encontrar uma possível causa para o seu problema.
1. Por acaso é um EJB que referencia a si mesmo? Se for este o caso, dê uma olhada neste link:
https://jira.jboss.org/jira/browse/JBAS-6122
No caso, pode ser isto por causa da seguinte linha no seu stacktrace:
Dependency "jboss.j2ee:ear=BlueEAR.ear,jar=BlueSN.jar,name=PessoaBean,service=EJB3" (should be in state "Configured", but is actually in state "PreInstall")
2. Problema no próprio JDK/JRE.
Nesta situação, experimente usar outra versão do JDK ou JRE para executar o JBoss
3. Jar ausente:
Tem certeza de que todos os jars estão presentes na sua aplicação?
4. Bug no próprio JBoss.
Já tentou usar alguma outra versão do JBoss para fazer o seu deploy?
Gostei + 0
04/12/2009
Leonardo
quando chegar em casa, vou testar estas possibilidades, mas no link que você passou já dá uma boa pista. Essas duas respostas me chamaram atenção:
Alexei Akimov - 26/Mar/09 08:25 AM
This issue is a special case of more general problem. JBoss AS 5 cannot deploy EJB3 beans which have circular dependencies. For example, let bean A has ejb-ref to bean B and bean B has ejb-ref to A. Even if both references are specified in deployment descriptor and injection is not used, deployer refuses to deploy application with similar message stating that A is waiting for B and B is waiting for A. So using getBusinessObject methed cannot be a workaround in such a case.
My suggestion is to reopen issue or to open a new one.
Mirek Sz - 12/Nov/09 02:27 AM I still have the same problem
JBoss AS 5 cannot deploy EJB3 beans which have circular dependencies. For example, let bean A has ejb-ref to bean B and bean B has ejb-ref to A. Even if both references are specified in deployment descriptor and injection is not used, deployer refuses to deploy application with similar message stating that A is waiting for B and B is waiting for A.
A aplicação em questão tem uma entity chamada Pessoa que tem um auto relacionamento de 1:N implementado em JPA. A idéia é algo tipo rede de conhecimento (como orkut). Uma pessoa conhece várias pessoas. O código é este:
Entity
@Table(name="pessoas")
public class Pessoa implements Serializable {
....
@OneToMany(targetEntity=Pessoa.class)
@JoinTable(name="conhecidos",
joinColumns={@JoinColumn(name="id_pessoa")},
inverseJoinColumns={@JoinColumn(name="id_conhecido")})
private Set<Pessoa> conhecidos
....
@OneToMany
@JoinColumn(name="id_pessoa")
private Set<Proxima> proximas;
....
}
Há uma outra questão que se encaixa na descrição dos comentários acima. A classe Proxima tem uma referencia para a classe Pessoa. Trata-se da lista de pessoas que estiveram próximas em uma determinada data, não importando se é conhecida ou não.
public class Proxima implements Serializable {
...
@ManyToOne
@JoinColumn(name="id_proxima")
private Pessoa proxima;
private Date data;
....
}
Em termos de OO, me parece que a prática está correta. Será que o JBosss não suporta mesmo ?
Abs,
Gostei + 0
04/12/2009
Henrique Weissmann
em tese, o JBoss deveria suportar. No entanto, como mencionei, também nunca havia viso este erro.
precisando de qualquer coisa, estamos à sua disposição.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)