多くのアプリケーションサーバーに移植できる必要がある100%JPA2準拠のアプリケーションがあります。(理論的には)JPAに準拠しているということは、構成を介して(たとえば、ソースコードを変更せずに)JPAプロバイダーを切り替えることができることを意味します-(右???)。
サーブレットコンテナ(Tomcat、Jettyなど)内で実行する場合、アプリケーションはHibernateで実行するように構成されます。成熟度とパフォーマンスのために、TopLinkやEclipselinkよりもHibernateを選択します。これまでのところ、これは機能します。
ただし、Java EEアプリケーションサーバー内で実行する場合、デフォルトでJPAプロバイダーを使用する必要がありますか、それともHibernateを使用する必要がありますか?
JBoss内では、プロバイダーがHibernateであることを知っているので、おそらく問題ではありません。ただし、WebLogic内のプロバイダーはEclipselinkだと思います。WebSphereまたはGlassfishのプロバイダーが何を使用しているかはわかりませんが、これらのアプリケーションサーバー内でプロバイダーとしてHibernateを使用する方法の詳細な手順を見てきました。
質問をする別の方法は、これらのアプリケーションサーバーでHibernateを使用することで何が欠けているかということだと思います。