私のプロジェクトは Glassfish 3.0.1 で実行されています @PersistenceContext アノテーションを使用して EntityManager を注入しようとしています。これが私のコードです:
@Stateless
public class UserBean implements UserBeanRemote {
@PersistenceContext(unitName = "RHDManagementPlatformPU")
private EntityManager em;
public UserBean() {
if (this.em == null) {
System.err.println("NULL");
}
}
...
}
コンソールに「NULL」というエラー メッセージが表示されます。私はすでに私のものに似たトピックを 5 ~ 6 見ました。しかし、私が理解した唯一のことは、おそらく私のpersistence.xmlに問題があるということです。はい、これ:
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
<persistence-unit name="RHDManagementPlatformPU" transaction-type="JTA">
<provider>oracle.toplink.essentials.PersistenceProvider</provider>
<jta-data-source>dev_magi_entities</jta-data-source>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties>
<property name="toplink.ddl-generation" value="create-tables"/>
</properties>
</persistence-unit>
</persistence>
このファイルを構成する方法をインターネットで見つけようとしましたが、問題がどこにあるのかわかりませんでした。誰かがアイデアやチュートリアル、この獣の仕組みをよりよく理解するのに役立つ手動リンクを持っているかもしれません =)