JBOSS x Varios Cliente x bancos diferentes

6 respostas
gustavo.moda

Amigos,

Cenário:

  • JBOSS como server
  • Configurado mais de um DS: Exemplo: ClienteADS, ClienteBDS, ClienteCDS
  • No MATA-INF tenho o persistence.xmll

Estou perdido para deixar isso dinâmico, ou seja, cada instancia usar um DS especifico e usar o mesmo JAR.
Alguem poderia me ajudar.

Grato

6 Respostas

P

crie várias Persistence Units no mesmo persistence xml, cada uma utilizando um data source diferente.

gustavo.moda

Valeu.

E quando o cliente conectar, como dizer ao Bean para acessar usando a persistence correta?

gustavo.moda

Colocando mais de um persistente unit no xml funcionou.

Mas preciso agora definir o PersistenceContext!

@Stateless
public class PacoteAtualizacaoBean implements PacoteAtualizacaoRemote {
	static Logger logger = Logger.getLogger(PacoteAtualizacaoBean.class);

	@PersistenceContext(unitName="ClienteAl", type=PersistenceContextType.TRANSACTION)
	EntityManager em;

Como deixar isso dinâmico?
Obrigado

P

Não existe forma de deixar dinâmica a obtenção de uma persistence unit gerênciada por container.
Uma idéia seria criar um EntityManager usando o EntityManagerFactory. Ex.:

EntityManagerFactory emf = Persistence.createEntityManagerFactory("Persistence_Unit_Name");
EntityManager em = emf.createEntityManager();
gustavo.moda

pozzo:
Não existe forma de deixar dinâmica a obtenção de uma persistence unit gerênciada por container.
Uma idéia seria criar um EntityManager usando o EntityManagerFactory. Ex.:

EntityManagerFactory emf = Persistence.createEntityManagerFactory("Persistence_Unit_Name"); EntityManager em = emf.createEntityManager();

Entao, fiz isso, porem tenho o erro abaixo:
javax.ejb.EJBException: javax.persistence.PersistenceException: org.hibernate.HibernateException: The chosen transaction strategy requires access to the JTA

O que falta,

Obrigado pela ajuda.

gustavo.moda

gustavo.moda:
pozzo:
Não existe forma de deixar dinâmica a obtenção de uma persistence unit gerênciada por container.
Uma idéia seria criar um EntityManager usando o EntityManagerFactory. Ex.:

EntityManagerFactory emf = Persistence.createEntityManagerFactory("Persistence_Unit_Name"); EntityManager em = emf.createEntityManager();

Entao, fiz isso, porem tenho o erro abaixo:
javax.ejb.EJBException: javax.persistence.PersistenceException: org.hibernate.HibernateException: The chosen transaction strategy requires access to the JTA

O que falta,

Obrigado pela ajuda.

Localizzei no google.
Coloquei

no persistence.xml.

Obrigado. resolvido.

Criado 20 de agosto de 2008
Ultima resposta 20 de ago. de 2008
Respostas 6
Participantes 2