Oi pessoal
Estou fazendo um sistema em que em alguns casos vou precisar me comunicar com bases legadas. por exemplo, o sistema de usuario deve ser acoplavel a algum ja existente, seja ldap, sap ou uma tabela do banco de dados que a empresa tenha login/senha. Ateh ai uma interface para o DAO do User resolve.
Mas como fica para eu fazer relacoes? Isto eh, se uma classe minha tem uma relacao com User, na hora que eu persistir essa classe, como vou fazer uma foreign key para User? Claro, posso usar a PK do User legado, mas se a outra classe eu estiver usando hibernate, vai ser uma bela meleca.
Seria entao melhor que a classe que eh relacionada a User ter uma referencia a um ipo UserProxy, e esse sim seria sempre hibernetado e teria um metodo getRealUser nele, que me devolve um User, e esse UserProxy (po, que nome ruim) faria o select ou chamada ao LDAP/SAP e populava um objeto da interface User pra mim?
pra piorar: nao soh o User pode ser puxado de base legada, pode ser que Cliente e Fornecedor e mais um monte de outras classes precisem ser puxadas da base legada. Agora imagine o pior caso: eles ja tem tabelas de User, Cliente e Fornecedor, soh que as tabelas deles nao possuem os dados suficientes que eu preciso, ou possuem mais. O que eu faco?
Eh melhor uma solucao que sincroniza a base do meu sistema com o legado deles toda a noite por XML? Qual a experiencia de voces?
toda opiniao, e em especial experiencias, sao muito bem vindas. muito obrigado
)