Engenharia Reversa + Diferentes esquemas BD
19/06/2015 12:27
0
Pessoal,

Agora realmente estou empenhado em Grails, já aprendi várias paradas, já postei várias dificuldades aqui, já me ajudaram bastante, já até me perdi e resolvi unificar minhas dificuldade em um post só.

Bom eu tenho um sistema funcionando hoje na qual iremos refazê-lo em grails, sendo que não posso fazer um novo banco de dados, ou seja, terei que usar o que tem hoje(que por sinal está ruim de mais, só que o chefe não quer mexer), enfim...

Fiz alguns testes isolados com um plugin de engenharia reversa que eu vi aqui, já até postei dúvida sobre ele, e vi que realmente funciona perfeitamente, sendo que quando eu tento fazer o mesmo procedimento com o banco que realmente irei ter que fazer ele não funciona, dando o seguinte erro:

|Starting database reverse engineering, connecting to 'jdbc:postgresql://10.40.8.23:5432/banco' as 'postgres' ...
Error |
org.hibernate.cfg.JDBCBinderException: Foreign key name (fk_obm) mapped to different tables! previous: org.hibernate.mapping.Table(dgst.processo) current:org.hibernate.mapping.Table(dgst.requerimento_pergunta)
Error |
at grails.plugin.reveng.GrailsJdbcBinder.readDatabaseSchema(GrailsJdbcBinder.groovy:60)
Error |
at grails.plugin.reveng.GrailsJdbcMetaDataConfiguration.readFromJDBC(GrailsJdbcMetaDataConfiguration.groovy:32)
Error |
at grails.plugin.reveng.Reenigne.buildConfiguration(Reenigne.groovy:114)
Error |
at grails.plugin.reveng.Reenigne.execute(Reenigne.groovy:60)
Error |
at grails.plugin.reveng.RevengRunner.run(RevengRunner.groovy:81)
Error |
at DbReverseEngineer$_run_closure1.doCall(DbReverseEngineer:36)
Error |
at org.grails.ide.api.impl.GrailsConnectorImpl.executeCommand(GrailsConnectorImpl.java:160)
Error |
at org.grails.ide.eclipse.longrunning.process.GrailsProcess.run(GrailsProcess.java:130)
Error |
at org.grails.ide.eclipse.longrunning.process.GrailsProcess.main(GrailsProcess.java:93)


Agora vou descrever a estrutura do banco:
>banco
?>schema_1
? ?>tabelas...
?>schema_2
? ?>tabelas...
?>schema_3
? ?>tabelas...
?>schema_4
? ?>tabelas...

E no DataSource.groovy eu só consigo colocar hibernate.default_schema = "schema_1".

Eu fiz um teste, criando um banco de dados só com um 1 schema, o plugin funcionou perfeitamente. Agora eu não sei se realmente o problema é o schemas ou é o banco mal feito.

Espero contar com a ajuda de vocês, pois só está faltando isso para poder dar continuidade no novo sistema.
Tags: schema reverso


0
Eu sugiro cria múltiplos datasource, criar um datasource para cada esquema.


http://grails.github.io/grails-doc/2.2.1/guide/conf.html#multipleDatasources
19/06/2015 16:07


0
Eu criei e nada.

Estou achando que esse problema não é por causa do schema, acho que é referência do banco, porque parece que o hibernate está reclamando que a mesma FK está declarada em duas tabelas diferentes.
22/06/2015 12:11



Ainda não faz parte da comunidade???

Para se registrar, clique aqui.


Aprenda Groovy e Grails com a Formação itexto!

Newsletter Semana Groovy

Assinar

Envie seu link!


Livro de Grails


/dev/All

Os melhores blogs de TI (e em português) em um único lugar!

 
Creative Commons
RSS Grails Brasil é mantido por itexto Consultoria.
Em caso de problemas contacte Henrique Lobo Weissmann (Kico) por e-mail: kico@itexto.com.br
Todo o conteúdo presente neste site adota o Creative Commons como licença padrão.
Ver: 4.14.0
itexto