[jboss-jira] [JBoss JIRA] (WFLY-2540) EntityListener CDI Injection does not work

Jens Schumann (JIRA) jira-events at lists.jboss.org
Tue Nov 19 14:21:06 EST 2013


    [ https://issues.jboss.org/browse/WFLY-2540?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12925052#comment-12925052 ] 

Jens Schumann commented on WFLY-2540:
-------------------------------------

Stuart: While I don't know the internals the error message is completely different. There might be a relation that is obvious for you - I don't see a relation to the mentioned bug report.

20:17:45,869 ERROR [org.jboss.msc.service.fail] (ServerService Thread Pool -- 121) MSC000001: Failed to start service jboss.persistenceunit."simple_inject.war#simple_inject": org.jboss.msc.service.StartException in service jboss.persistenceunit."simple_inject.war#simple_inject": org.jboss.weld.exceptions.IllegalArgumentException: WELD-001456: Argument resolvedBean must not be null
	at org.jboss.as.jpa.service.PersistenceUnitServiceImpl$1$1.run(PersistenceUnitServiceImpl.java:172) [wildfly-jpa-8.0.0.Beta2-SNAPSHOT.jar:8.0.0.Beta2-SNAPSHOT]
	at org.jboss.as.jpa.service.PersistenceUnitServiceImpl$1$1.run(PersistenceUnitServiceImpl.java:117) [wildfly-jpa-8.0.0.Beta2-SNAPSHOT.jar:8.0.0.Beta2-SNAPSHOT]
	at java.security.AccessController.doPrivileged(Native Method) [rt.jar:1.7.0_04]
	at org.wildfly.security.manager.WildFlySecurityManager.doChecked(WildFlySecurityManager.java:463)
	at org.jboss.as.jpa.service.PersistenceUnitServiceImpl$1.run(PersistenceUnitServiceImpl.java:182) [wildfly-jpa-8.0.0.Beta2-SNAPSHOT.jar:8.0.0.Beta2-SNAPSHOT]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) [rt.jar:1.7.0_04]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) [rt.jar:1.7.0_04]
	at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_04]
	at org.jboss.threads.JBossThread.run(JBossThread.java:122)
Caused by: org.jboss.weld.exceptions.IllegalArgumentException: WELD-001456: Argument resolvedBean must not be null
	at org.jboss.weld.util.Preconditions.checkArgumentNotNull(Preconditions.java:40) [weld-core-impl-2.1.0.Final.jar:2013-10-11 10:25]
	at org.jboss.weld.manager.BeanManagerImpl.getReference(BeanManagerImpl.java:766) [weld-core-impl-2.1.0.Final.jar:2013-10-11 10:25]
	at org.jboss.weld.injection.FieldInjectionPoint.inject(FieldInjectionPoint.java:92) [weld-core-impl-2.1.0.Final.jar:2013-10-11 10:25]
	at org.jboss.weld.util.Beans.injectBoundFields(Beans.java:358) [weld-core-impl-2.1.0.Final.jar:2013-10-11 10:25]
	at org.jboss.weld.util.Beans.injectFieldsAndInitializers(Beans.java:369) [weld-core-impl-2.1.0.Final.jar:2013-10-11 10:25]
	at org.jboss.weld.injection.producer.DefaultInjector.inject(DefaultInjector.java:72) [weld-core-impl-2.1.0.Final.jar:2013-10-11 10:25]
	at org.jboss.weld.injection.producer.ResourceInjector.inject(ResourceInjector.java:60) [weld-core-impl-2.1.0.Final.jar:2013-10-11 10:25]
	at org.jboss.weld.injection.producer.DefaultInjector$1.proceed(DefaultInjector.java:66) [weld-core-impl-2.1.0.Final.jar:2013-10-11 10:25]
	at org.jboss.weld.injection.InjectionContextImpl.run(InjectionContextImpl.java:48) [weld-core-impl-2.1.0.Final.jar:2013-10-11 10:25]
	at org.jboss.weld.injection.producer.DefaultInjector.inject(DefaultInjector.java:64) [weld-core-impl-2.1.0.Final.jar:2013-10-11 10:25]
	at org.jboss.weld.injection.producer.BasicInjectionTarget.inject(BasicInjectionTarget.java:90) [weld-core-impl-2.1.0.Final.jar:2013-10-11 10:25]
	at org.hibernate.jpa.event.internal.jpa.BeanManagerListenerFactory$BeanMetaData.<init>(BeanManagerListenerFactory.java:82) [hibernate-entitymanager-4.3.0.Beta4.jar:4.3.0.Beta4]
	at org.hibernate.jpa.event.internal.jpa.BeanManagerListenerFactory$BeanMetaData.<init>(BeanManagerListenerFactory.java:71) [hibernate-entitymanager-4.3.0.Beta4.jar:4.3.0.Beta4]
	at org.hibernate.jpa.event.internal.jpa.BeanManagerListenerFactory.buildListener(BeanManagerListenerFactory.java:57) [hibernate-entitymanager-4.3.0.Beta4.jar:4.3.0.Beta4]
	at org.hibernate.jpa.event.internal.jpa.LegacyCallbackProcessor.resolveCallbacks(LegacyCallbackProcessor.java:168) [hibernate-entitymanager-4.3.0.Beta4.jar:4.3.0.Beta4]
	at org.hibernate.jpa.event.internal.jpa.LegacyCallbackProcessor.processCallbacksForEntity(LegacyCallbackProcessor.java:71) [hibernate-entitymanager-4.3.0.Beta4.jar:4.3.0.Beta4]
	at org.hibernate.jpa.event.spi.JpaIntegrator.integrate(JpaIntegrator.java:150) [hibernate-entitymanager-4.3.0.Beta4.jar:4.3.0.Beta4]
	at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:310) [hibernate-core-4.3.0.Beta4.jar:4.3.0.Beta4]
	at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1837) [hibernate-core-4.3.0.Beta4.jar:4.3.0.Beta4]
	at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:854) [hibernate-entitymanager-4.3.0.Beta4.jar:4.3.0.Beta4]
	at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:847) [hibernate-entitymanager-4.3.0.Beta4.jar:4.3.0.Beta4]
	at org.hibernate.boot.registry.classloading.internal.ClassLoaderServiceImpl.withTccl(ClassLoaderServiceImpl.java:396) [hibernate-core-4.3.0.Beta4.jar:4.3.0.Beta4]
	at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:846) [hibernate-entitymanager-4.3.0.Beta4.jar:4.3.0.Beta4]
	at org.jboss.as.jpa.hibernate4.TwoPhaseBootstrapImpl.build(TwoPhaseBootstrapImpl.java:44) [jipijapa-hibernate4-3-1.0.0.CR2.jar:]
	at org.jboss.as.jpa.service.PersistenceUnitServiceImpl$1$1.run(PersistenceUnitServiceImpl.java:154) [wildfly-jpa-8.0.0.Beta2-SNAPSHOT.jar:8.0.0.Beta2-SNAPSHOT]
	... 8 more

-----------

20:19:06,159 ERROR [org.jboss.msc.service.fail] (ServerService Thread Pool -- 127) MSC000001: Failed to start service jboss.persistenceunit."simple_inject.war#simple_inject": org.jboss.msc.service.StartException in service jboss.persistenceunit."simple_inject.war#simple_inject": org.jboss.weld.exceptions.UnsatisfiedResolutionException: WELD-001308: Unable to resolve any beans for Types: [interface javax.enterprise.inject.Instance]; Bindings: [QualifierInstance{annotationClass=interface javax.enterprise.inject.Any, values={}, hashCode=-261926124}]
	at org.jboss.as.jpa.service.PersistenceUnitServiceImpl$1$1.run(PersistenceUnitServiceImpl.java:172) [wildfly-jpa-8.0.0.Beta2-SNAPSHOT.jar:8.0.0.Beta2-SNAPSHOT]
	at org.jboss.as.jpa.service.PersistenceUnitServiceImpl$1$1.run(PersistenceUnitServiceImpl.java:117) [wildfly-jpa-8.0.0.Beta2-SNAPSHOT.jar:8.0.0.Beta2-SNAPSHOT]
	at java.security.AccessController.doPrivileged(Native Method) [rt.jar:1.7.0_04]
	at org.wildfly.security.manager.WildFlySecurityManager.doChecked(WildFlySecurityManager.java:463)
	at org.jboss.as.jpa.service.PersistenceUnitServiceImpl$1.run(PersistenceUnitServiceImpl.java:182) [wildfly-jpa-8.0.0.Beta2-SNAPSHOT.jar:8.0.0.Beta2-SNAPSHOT]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) [rt.jar:1.7.0_04]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) [rt.jar:1.7.0_04]
	at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_04]
	at org.jboss.threads.JBossThread.run(JBossThread.java:122)
Caused by: org.jboss.weld.exceptions.UnsatisfiedResolutionException: WELD-001308: Unable to resolve any beans for Types: [interface javax.enterprise.inject.Instance]; Bindings: [QualifierInstance{annotationClass=interface javax.enterprise.inject.Any, values={}, hashCode=-261926124}]
	at org.jboss.weld.manager.BeanManagerImpl.getBean(BeanManagerImpl.java:816) [weld-core-impl-2.1.0.Final.jar:2013-10-11 10:25]
	at org.jboss.weld.manager.BeanManagerImpl.getInjectableReference(BeanManagerImpl.java:807) [weld-core-impl-2.1.0.Final.jar:2013-10-11 10:25]
	at org.jboss.weld.injection.FieldInjectionPoint.inject(FieldInjectionPoint.java:87) [weld-core-impl-2.1.0.Final.jar:2013-10-11 10:25]
	at org.jboss.weld.util.Beans.injectBoundFields(Beans.java:358) [weld-core-impl-2.1.0.Final.jar:2013-10-11 10:25]
	at org.jboss.weld.util.Beans.injectFieldsAndInitializers(Beans.java:369) [weld-core-impl-2.1.0.Final.jar:2013-10-11 10:25]
	at org.jboss.weld.injection.producer.DefaultInjector.inject(DefaultInjector.java:72) [weld-core-impl-2.1.0.Final.jar:2013-10-11 10:25]
	at org.jboss.weld.injection.producer.ResourceInjector.inject(ResourceInjector.java:60) [weld-core-impl-2.1.0.Final.jar:2013-10-11 10:25]
	at org.jboss.weld.injection.producer.DefaultInjector$1.proceed(DefaultInjector.java:66) [weld-core-impl-2.1.0.Final.jar:2013-10-11 10:25]
	at org.jboss.weld.injection.InjectionContextImpl.run(InjectionContextImpl.java:48) [weld-core-impl-2.1.0.Final.jar:2013-10-11 10:25]
	at org.jboss.weld.injection.producer.DefaultInjector.inject(DefaultInjector.java:64) [weld-core-impl-2.1.0.Final.jar:2013-10-11 10:25]
	at org.jboss.weld.injection.producer.BasicInjectionTarget.inject(BasicInjectionTarget.java:90) [weld-core-impl-2.1.0.Final.jar:2013-10-11 10:25]
	at org.hibernate.jpa.event.internal.jpa.BeanManagerListenerFactory$BeanMetaData.<init>(BeanManagerListenerFactory.java:82) [hibernate-entitymanager-4.3.0.Beta4.jar:4.3.0.Beta4]
	at org.hibernate.jpa.event.internal.jpa.BeanManagerListenerFactory$BeanMetaData.<init>(BeanManagerListenerFactory.java:71) [hibernate-entitymanager-4.3.0.Beta4.jar:4.3.0.Beta4]
	at org.hibernate.jpa.event.internal.jpa.BeanManagerListenerFactory.buildListener(BeanManagerListenerFactory.java:57) [hibernate-entitymanager-4.3.0.Beta4.jar:4.3.0.Beta4]
	at org.hibernate.jpa.event.internal.jpa.LegacyCallbackProcessor.resolveCallbacks(LegacyCallbackProcessor.java:168) [hibernate-entitymanager-4.3.0.Beta4.jar:4.3.0.Beta4]
	at org.hibernate.jpa.event.internal.jpa.LegacyCallbackProcessor.processCallbacksForEntity(LegacyCallbackProcessor.java:71) [hibernate-entitymanager-4.3.0.Beta4.jar:4.3.0.Beta4]
	at org.hibernate.jpa.event.spi.JpaIntegrator.integrate(JpaIntegrator.java:150) [hibernate-entitymanager-4.3.0.Beta4.jar:4.3.0.Beta4]
	at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:310) [hibernate-core-4.3.0.Beta4.jar:4.3.0.Beta4]
	at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1837) [hibernate-core-4.3.0.Beta4.jar:4.3.0.Beta4]
	at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:854) [hibernate-entitymanager-4.3.0.Beta4.jar:4.3.0.Beta4]
	at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:847) [hibernate-entitymanager-4.3.0.Beta4.jar:4.3.0.Beta4]
	at org.hibernate.boot.registry.classloading.internal.ClassLoaderServiceImpl.withTccl(ClassLoaderServiceImpl.java:396) [hibernate-core-4.3.0.Beta4.jar:4.3.0.Beta4]
	at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:846) [hibernate-entitymanager-4.3.0.Beta4.jar:4.3.0.Beta4]
	at org.jboss.as.jpa.hibernate4.TwoPhaseBootstrapImpl.build(TwoPhaseBootstrapImpl.java:44) [jipijapa-hibernate4-3-1.0.0.CR2.jar:]
	at org.jboss.as.jpa.service.PersistenceUnitServiceImpl$1$1.run(PersistenceUnitServiceImpl.java:154) [wildfly-jpa-8.0.0.Beta2-SNAPSHOT.jar:8.0.0.Beta2-SNAPSHOT]
	... 8 more

                
> EntityListener CDI Injection does not work 
> -------------------------------------------
>
>                 Key: WFLY-2540
>                 URL: https://issues.jboss.org/browse/WFLY-2540
>             Project: WildFly
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: CDI / Weld, JPA / Hibernate
>    Affects Versions: 8.0.0.CR1
>            Reporter: Jens Schumann
>            Assignee: Stuart Douglas
>         Attachments: simple_inject.tar
>
>
> This is a bug report for Wildfly 8.0.0.Beta2-SNAPSHOT downloaded yesterday.
> I tried to test CDI injection into entity listeners - and as far I can tell it does not work. In general it seems to work (I can inject a beanmanager), my custom services can't be injected.
> If I try to inject a service (@Default, "@Qualified", "Produced @Qualified") and Provider<Service> (@Default, "@Qualified", "Produced @Qualified") i get an "Argument resolvedBean must not be null". I I try to inject a Instance<Service> (@Default, "@Qualified", "Produced @Qualified") I get an "Unable to resolve any beans for Types: [interface javax.enterprise.inject.Instance]" with qualifier javax.enterprise.inject.Any even if I use @Default, "@Qualified", "Produced @Qualified".
> I will attach a simple demo web archive that shows that injection does work, however EntityListener injection does not work.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the jboss-jira mailing list