jboss seam 中关于entitymanager范例为空的原因
jboss seam 中关于entitymanager实例为空的原因在seam的使用过程中,调用entitymanager的方法为:@Persisten
jboss seam 中关于entitymanager实例为空的原因
在seam的使用过程中,调用entitymanager的方法为:
@PersistenceContextEntityManager em;
但在实际调试过程中,em经常为空,造成在XHTML文件中的变量在render时出现null pointer的错误,后来google了一下,有文章说,说EntityManager变量的名称em必须与components.xml中定义的一样才行:
<persistence:managed-persistence-context name="entityManager" auto-create="true" persistence-unit-jndi-name="@puJndiName@"/>
就是说定义为em就是空,定义为entityManager时就可以,试了一下还是不行。后来自己经过调试,才搞清楚原因,在一个bean中调用EntityManager,不能在其bean构造器中调用,而是在其初始化后才能调用,否则就为空。
1 楼 andyhan 2010-03-17 LZ先好好研究一下Seam的IoC的生命周期吧。 2 楼 sdzth2011 2012-08-28 具体怎么调用呀?求教~