1

OC4J 10.1.3.5.0 を使用していますが、jpa 2 に問題があります。hibernate-jpa-2.0-api-1.0.1.Final.jar をクラスパスに入れました。アプリをデプロイし、コードで @OneToMany アノテーションを使用すると、次の例外が発生します: java.lang.NoSuchMethodError:javax.persistence.OneToMany.orphanRemoval()Z

コードから削除すると、アプリが正常に実行されます。

4

2 に答える 2

1

OC4J_PATH\j2ee\home\lib\persistance.jar この jar ファイル jpa 1 をロードし、サーバーを起動して、この jar を同じ名前の Jpa 2 jar に置き換え、アプリが正常に実行されるようにしました

于 2013-03-24T16:38:30.477 に答える
1

クラスパスに互換性のない JPA ライブラリがあります。エラー「java.lang.NoSuchMethodError」は、クラス「javax.persistence.OneToMany」にメソッド「orphanRemoval()」がないことを示しています。スタック トレースに基づいてライブラリのバージョンを確認できるはずです。

OC4Jにデプロイされたwarファイル・ディレクトリのクラスを確認してください。また、OC4Jコンテナのlibディレクトリに競合するライブラリがないことを確認してください(パッケージ化されたjarよりも優先されます)。

于 2013-03-21T15:12:36.487 に答える