WildFly 10.1での実行をアップグレードしようとしているJBoss 6上で(問題なし)現在アプリケーションを実行しています。このアップグレードの多くは順調です。しかし、Hibernate 3.4(JBoss 6)からHibernate 5.1(WildFly 10.1)へのアップグレードはいくつかの問題を引き起こしています。hibernate.hbm2ddl.auto value = "更新" Hibenate 3.4から5.1への移行の問題
特に、私のpersistence.xmlには、次のプロパティが含まれています。
<property name="hibernate.hbm2ddl.auto" value="update"/>
注意:私はアップグレードの一環としてスキーマやその他のDBの変更を行っていません。さらに、JBoss 6/Hibernate 3.4インスタンスの下で正常に実行されていたのと同じデータベースインスタンスを指しています。したがって、私は、このプロパティを含めるには、WildFly 10.1/Hibernate 5.1バージョンでの最初の実行時に実際に作業/更新する必要はないと確信しています。
ただし、このプロパティを含めると、1)誤って更新を行う必要があると判断し、2)失敗することがあります。これは、次のスタックトレースになり:(最終エラーによって確認されたように)
Failed to start service jboss.persistenceunit."app.ear#PU": org.jboss.msc.service.StartException in service jboss.persistenceunit."PU": javax.persistence.PersistenceException: [PersistenceUnit: PU] Unable to build Hibernate SessionFactory
...
Caused by: javax.persistence.PersistenceException: [PersistenceUnit: PU] Unable to build Hibernate SessionFactory
...
Caused by: org.hibernate.tool.schema.spi.SchemaManagementException: Unable to execute schema management to JDBC target [create index company_id_index on APPROVER (COMPANY_ID)]
...
Caused by: org.postgresql.util.PSQLException: ERROR: relation "company_id_index" already exists
ここでも、問題のテーブルとインデックスがすでに存在しています。
Hibernateは大文字と小文字を区別しなくなりました(COMPANY_ID_INDEXはcompany_id_indexとは異なります)?もしそうなら、それはそれがために使用されるように大文字と小文字が区別されるように
は、どのように私は(これのすべての下位にPostgresのデフォルトは....)
TIAを、それを構成することができます!