]
Pete Muir closed WELD-790.
--------------------------
Resolution: Done
Please test!
Validation of InjectionTargets prevents firing of
ProcessInjectionTarget<X> for non-contextual EE components
------------------------------------------------------------------------------------------------------------
Key: WELD-790
URL:
https://issues.jboss.org/browse/WELD-790
Project: Weld
Issue Type: Bug
Components: GlassFish Integration, Resolution (Typesafe and by Name)
Affects Versions: 1.1.0.CR1
Reporter: Sivakumar Thyagarajan
Assignee: Pete Muir
Priority: Critical
Fix For: 1.1.0.Final
The eager validation of InjectionTargets introduced via [1] to fix WELD-761 results in an
issue when a container tries to fire ProcessInjectionTarget<T> events for injection
into non-contextual Java EE components. When the container fires ProcessInjectionTarget
events before Beans are deployed via bootstrap.deployBeans, the BDA processing is not
complete and hence resolution fails during validation as shown below. The container also
needs to fire these events before AfterBeanDiscovery as pointed at [2] and hence this
eager validation is an issue.
-- Error with a local integration of GF3.1 trunk and WELD 1.1.0.CR1 ----
[#|2010-12-14T14:31:10.044+0530|SEVERE|glassfish3.1|javax.enterprise.system.tools.admin.org.glassfish.deployment.admin|_ThreadID=109;_ThreadName=admin-thread-pool-4848(1);|Exception
while loading the app : WELD-001408 Unsatisfied dependencies for type [TestBean] with
qualifiers [@Default] at injection point [[field] @Inject TestServlet.tb]
org.jboss.weld.exceptions.DeploymentException: WELD-001408 Unsatisfied dependencies for
type [TestBean] with qualifiers [@Default] at injection point [[field] @Inject
TestServlet.tb]
at org.jboss.weld.bootstrap.Validator.validateInjectionPoint(Validator.java:305)
at
org.jboss.weld.manager.SimpleInjectionTarget.<init>(SimpleInjectionTarget.java:107)
at
org.jboss.weld.manager.BeanManagerImpl.createInjectionTarget(BeanManagerImpl.java:1032)
at
org.jboss.weld.manager.BeanManagerImpl.fireProcessInjectionTarget(BeanManagerImpl.java:1220)
at
org.glassfish.weld.WeldDeployer.fireProcessInjectionTargetEvents(WeldDeployer.java:237)
at org.glassfish.weld.WeldDeployer.event(WeldDeployer.java:161)
at org.glassfish.kernel.event.EventsImpl.send(EventsImpl.java:128)
at org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:266)
at
com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:459)
at
com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:240)
at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:369)
-- Error with a local integration of GF3.1 trunk and WELD 1.1.0.CR1 ----
[1]
https://github.com/weld/core/commit/eb0f2020ee8e79ff04fe8d929837b0bedf80b19b
[2]
http://java.net/jira/browse/GLASSFISH-11135?focusedCommentId=130738&p...
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: