...実際に読んだり解析したりせずにpersistence.xml
のファクトリEntityManager
のプロパティを使用して、の永続性ユニットの名前を取得できます。jboss-as-controller-clientを使用して利用可能なデータソースを取得できます。しかし、特定ののデータソースを提供するAPIは見つかりませんでした。EntityManager
String
名前の付いたAで十分です。
ありがとうございました
JBoss7.1.1.FinalでJPA2を介してHibernate4.0.1.Finalを使用しています。
編集:可能であれば、JPAからHibernateAPIへの逸脱を避けたいと思います。
ClassCastException
編集:Augustoのソリューションは機能しました、詳細についていくつかのメモがあります:EMのキャストは:( )のために機能しませんでしたorg.jboss.as.jpa.container.TransactionScopedEntityManager cannot be cast to org.hibernate.ejb.EntityManagerImpl
が、取得したファクトリでは機能しました。そのため、手順1を省略しました。
また、インスタンスからデータソースの名前を取得する方法も見つかりませんでした。だから私はカタログ名で満足しなければなりませんでした:connectionProvider.getConnection().getCatalog();