2016-10-24 5 views
1

Grails 3.1.6を入手する際に問題が発生しました。複数のデータソースで動作するようにjndiを使用しています。私は非常に近いですが、 'hibernate.default_schema'ただし、データソースの1つで、環境固有のものです。resources.groovyの既存のSpring Beanを編集するにはどうすればいいですか?

resources.goovy:

dataSource(JndiObjectFactoryBean) { 
     jndiName = "java:comp/env/jdbc/blah" 
    } 

私はあなたのSessionFactoryの「hibernateProperties」でそれを置くことができることを読んだが、私は私が必要なプロパティを追加するかどうかはわかりません。

dataSourceで 'hibernate.default_schema'を設定するにはどうすればよいですか?

編集: 私はapplication.yml経由でスキーマを設定しようとしたが、動作していないよう:各sessionFactory BeanのhibernatePropertiesセットが既に存在し

someEnv: # rest of the db config setup in resources.groovy 
    dataSources: 
     dataSource: 
      hibernate: 
       default_schema: something 
+0

各sessionFactory beanにすでにhibernatePropertiesが設定されていて、その値は設定の 'hibernate'ブロックから設定されています。' hibernate_ ' –

+0

に環境変数を追加することができるはずです。 development.hibernate.default_schema:blah_schema'私はそれを動作させることができました。このソリューションは他のデータソースに影響を与えないように見えました。質問に「答える」と答えると、私はそれに印を付けることができます。 –

+0

クールで、うまくいきました(Spring Beanの定義を掘り下げたものではありません) –

答えて

0

、および値設定のhibernateブロックから設定されているので、それをhibernate_<yourdatasourcename>の下に追加できるはずです。

関連する問題