Estou precisando fazer um relacionamento entre tabelas de Bancos de Dados diferentes, porém nunca trabalhei dessa forma.
Ao fazer o teste, obviamente, pela configuração normal obtive um erro que onde o JPA diz não conhecer a entidade do outro banco de dados.
Se esta entidade não faz parte deste banco de dados, como faço para resolver este problema através do JPA?
Já procurei nesse forum pra caramba!
Não consegui encontrar nada, pelo menos, não da forma como estou procurando. (cross database, jpa duas tabela de bancos diferentes, relacionamento cruzado entre bancos de dados, etc).
No Google Master encontrei algumas soluções, mas envolvendo JTA. Será que só existe essa maneira?
Alguém ai mais experiente poderia dar pelo menos uma luz??
Obrigado!
D
dreampeppers99
AGAraujo:
Boa noite,
Estou precisando fazer um relacionamento entre tabelas de Bancos de Dados diferentes, porém nunca trabalhei dessa forma.
Ao fazer o teste, obviamente, pela configuração normal obtive um erro que onde o JPA diz não conhecer a entidade do outro banco de dados.
Se esta entidade não faz parte deste banco de dados, como faço para resolver este problema através do JPA?
Boa noite!
Como sao dois bancos distintos voce pode tentar ter dois EntityManagers.
A
AGAraujo
A estrutura da aplicação é a seguinte:
Banco de Dados A com tabela X com atributos (a,b,z) e Banco de Dados B com tabela Y com atributos (c, d, z), sendo que o que X e Y precisam estar assossiados por um determinado campo: z.
Duas EntityManager não resolve esta situação até onde conheço. Mas se resolve, por favor, me dá esse help ai… Não sei como fazer isto!
D
dreampeppers99
AGAraujo:
A estrutura da aplicação é a seguinte:
Banco de Dados A com tabela X com atributos (a,b,z) e Banco de Dados B com tabela Y com atributos (c, d, z), sendo que o que X e Y precisam estar assossiados por um determinado campo: z.
Duas EntityManager não resolve esta situação até onde conheço. Mas se resolve, por favor, me dá esse help ai... Não sei como fazer isto!
Talvez seria o momento de voce juntar essas duas entidades numa so de uma forma diferente, apenas usando essa terceira como um delegate.
Agora se voce deseja que essa pessoa seja persistente e transacional, sem usar JEE ou Spring e ve-las como service, eu nao imagino como.
A
AGAraujo
Esse é o lance!!
Por isso falei que queria um relacionamento cruzado entre tabela de diferentes bancos de dados.
Precisa sim ser transacional, persistente e garantir integridade…
Arrumei uma solução aqui, mas fora do JPA… isto é temporário para resolver minha vida enquanto resolvo em definitvo…
Preciso muito de um help da galera aqui!
E obgrigado pela ajuda… e se tiver outras soluções por favor, não exite em postar!
C
clone_zealot
Existe a possibilidade de usar um Database Link?
Alguns bancos de dados têm esse conceito. Oracle e SQL Server são dois grandes bancos que possuem esse recurso.
A
AGAraujo
clone_zealor,
Este é um recurso do proprio SBGD, assim como outros de replicação e cluster, os quais não são possível devido ter bancos de dados que não possíbilitam isto e outra, os bancos de dados possuem SGBD diferentes.
E mesmo que tivessem esses recursos, isto não seria uma solução do JPA, ou pelo menos não vejo como seria.