在@EntityListeners中使用@Inject与hibernate-jpa2.1,JBoss EAP 7.0

时间:2018-02-14 02:52:06

标签: inject entitylisteners

任何人都有将Sessionscoped bean注入EntityListeners类的问题? 我在JBoss EAP 7.0上使用JPA 2.1,hibernate-jpa2.1。

@MappedSuperclass
@EntityListeners(ObjectDomainListener.class)
public abstract class ObjectDomain implements Persistent 
{...}

public class ObjectDomainListener
{
   @Inject private UserHolder userHolder; // sessionscoped

   @PreUpdate
   ...
   @PrePersist
   ...
}

和我的 persistence.xml

<persistence version="2.1"...

我得到的例外是,

  

无法执行目标部署:{&#34; WFLYCTL0062:复合操作   失败并被退回。失败的步骤:&#34; =&GT; {&#34;操作步骤-1&#34;   =&GT; {&#34; WFLYCTL0080:服务失败&#34; =&GT; {&#34; jboss.per sistenceunit。\&#34; myApp.war#primary \&#34;&#34; =&GT;   &#34;服务中的org.jboss.msc.service.StartException   jboss.persistenceunit。\&#34; myApp.war#primary \&#34;:javax。   persistence.PersistenceException:[PersistenceUnit:primary]无法执行   构建Hibernate SessionFactory [ERROR]引起:   javax.persistence.PersistenceException:[PersistenceUnit:primary]   无法构建Hibernate SessionFactory [错误]导致:   org.jboss.weld.exceptions.IllegalArgumentException:WELD-001456:   参数resolvedBean不能为null&#34;}}}}

1 个答案:

答案 0 :(得分:0)

看起来像EAP 7.0中的一个错误,我将尝试使用7.0.9补丁。 否则,在EAP 7.1上它可以工作。