問題タブ [hibernate-5]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
23 参照

hibernate - JPA/Hibernate が、Wildlfy 24.0.1.Final/Hibernate 5.3.20 で非 XA データ ソースのデータベース スキーマを正しく検出しない

問題の説明

プロジェクトを Wildfly 8.2.1.Final から新しいバージョンに移行しています。主な目的は、Java 8+ で Hibernate 5 を使用し、後で移行するために Java 11 と互換性のある Wildfly バージョンで実行することです (したがって、Java 8 で問題が発生します)。

jboss-migration-tool が standalone.xml の移行に役立つ最後のバージョンであるため、Wildfly 24.0.1.Final (Hibernate 5.3.20.Final) を選択しました (WF 25 はレガシーのサポートを削除するため、これは手動の移行手順)。

MySQLコネクタ8の最新バージョンでMariadb 10を使用しています。MySQLコネクタのバージョン5またはmariadb jdbcドライバーと同じ問題。

この問題は、非 XA データソースを移行するときに発生します (XA データソースは正常に動作します)。EAR の展開時に、Wildfly は、各エンティティをマッピングするときに「データベースが選択されていません」という警告を出し続け (ログを参照)、データベースのクエリ時にエラーを返します。

  • 他の人が示唆したように、connection-url が適切なスキーマ名で終わっていることを確認しました。
  • データベースへの接続のテストは問題ありません。
  • データソースを XA として指定すると、正常に動作します (standalone.xml の抜粋を参照)。
  • wildfly 8 では、XA データソースと非 XA データソースの両方が適切に動作します。
  • hibernate プロパティ hibernate.default_schema; でデフォルト スキーマ (voting_db) を再度指定してみました。XA データソースと非 XA データソースの両方でエラーが発生するようになったので、これは良い考えではないようです (ただし、エラーは異なります)。
  • persistence.XML の 2.0 バージョンにダウングレードしてみました

Wildfly の起動時に、次の警告が表示されます。

そのため、Wildfly 管理インターフェイスを介して追加されたデータソースで、standalone.xml 構文をチェックしましたが、問題は見つかりませんでした。次のログ メッセージは、データソースが適切にバインドされたことを通知するものです。しかし、何か間違っていることへのヒントですか?

私が欠けているものは何ですか?私は数日間、Webを検索してみました..

standalone.xml の非 XA データソース仕様 (簡略化)

これはエラーが発生する仕様です

standalone.xml の XA データソース仕様 (簡略化)

これは正常に動作する仕様です。

シンプルなpersistence.xml

ログ

以下はログの抜粋です。これは私にいくつかの質問を提起します:

  • 二次キャッシュはデフォルトで有効になっていますか? または、一部のエンティティが @cacheable としてマークされているためにアクティブ化されていますか?
  • hibernate.properties ファイルはどのくらい重要ですか?

EAR 展開時

各エンティティに対して同じ警告を繰り返します。

そして最後にエラーに到達