Использование @Inject в @EntityListeners с hibernate-jpa2.1, JBoss EAP 7.0

У кого-нибудь есть проблема с внедрением компонента Sessionscoped в класс EntityListeners? Я использую JPA 2.1, hibernate-jpa2.1 на JBoss EAP 7.0.

@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"...

Исключение, которое я получаю,

Не удалось выполнить целевое развертывание: {"WFLYCTL0062: сбой составной операции и откат. Неудачные шаги:" => {"Этап операции-1" => {"WFLYCTL0080: сбой служб" => {"jboss.per sistenceunit. \"myApp.war#primary\"" => "org.jboss.msc.service.StartException в службе jboss.persistenceunit.\"myApp.war#primary\": javax.persistence.PersistenceException: [PersistenceUnit: primary] Невозможно для создания Hibernate SessionFactory [ОШИБКА] Вызвано: javax.persistence.PersistenceException: [PersistenceUnit: primary] Невозможно построить Hibernate SessionFactory [ОШИБКА] Вызвано: org.jboss.weld.exceptions.IllegalArgumentException: WELD-001456: Аргумент разрешенBean не должен быть нулевым"}}}}


person DEREK LEE    schedule 14.02.2018    source источник
comment
Вы поняли, как использовать Inject (guice) с EntityListeners?   -  person Badman    schedule 15.10.2018
comment
Привет, Badman, какую версию JBoss вы используете? EAt 7.0 не поддерживает вставку в EL.   -  person DEREK LEE    schedule 05.11.2018


Ответы (1)


Похоже на ошибку в EAP 7.0, у меня патч 7.0.9, попробую. В противном случае на EAP 7.1 это работает.

person DEREK LEE    schedule 14.02.2018