Hi Martin,
Here's a simplified form of the test case:
The application does not start, reporting
[ERROR ] CWWKZ0004E: An exception occurred while starting the
application testDiffBDA. The exception message was:
com.ibm.ws.container.service.state.StateChangeException:
org.jboss.weld.exceptions.DeploymentException: WELD-001408: Unsatisfied
dependencies for type String with qualifiers @CounterModifiedQualifier
at injection point [BackedAnnotatedField] @Inject
@CounterModifiedQualifier
com.ibm.jcdi.test.beansxml.CounterProducerConsumerModified2.modifiedProducer
at
com.ibm.jcdi.test.beansxml.CounterProducerConsumerModified2.modifiedProducer(CounterProducerConsumerModified2.java:0)
There are five classes in the .war.
testDiffBDA.war/WEB-INF/classes/test/diff/web/FrontEndServlet.class
@Inject CounterProducerConsumerModified2 bean;
This class, CounterProducerConsumerModified2.class is packaged in the
first of two WEB-INF/lib jars, at
testDiffBDA.war/WEB-INF/lib/beans-xml-modified2.jar.jar/com/ibm/jcdi/test/beans/xml.
There is a bean that needs another bean injected into it:
@Inject @CounterModifiedQualifier String modifiedProducer;
The remaining three classes are all in the second WEB-INF/lib jar, at
testDiffBDA.war/WEB-INF/lib/beans-xml-modified.jar.jar/com/ibm/jcdi/test/beansxml/.
The classes are
CounterModifiedQualifier (the interface)
CounterProducerModified (the bean implementing that interface)
AlternativeCounterProducerModified (an alternative bean)
The AlternativeCounterProducerModified class is declared in
testDiffBDA.war/WEB-INF/lib/beans-xml-modified.jar.jar/META-INF/beans.xml,
<alternatives>
<class>
com.ibm.jcdi.test.beansxml.AlternativeCounterProducerModified</class>
</alternatives>
The test app starts correctly if the <alternative> stanza is commented
out.
Many thanks,
Emily
===========================
Emily Jiang
WebSphere Application Server, CDI Development Lead
MP 211, DE3A20, Winchester, Hampshire, England, SO21 2JN
Phone: +44 (0)1962 816278 Internal: 246278
Email: emijiang(a)uk.ibm.com
Lotus Notes: Emily Jiang/UK/IBM@IBMGB
From: Martin Kouba <mkouba(a)redhat.com>
To: Emily Jiang/UK/IBM@IBMGB, Weld <weld-dev(a)lists.jboss.org>,
Date: 18/11/2015 07:58
Subject: Re: potential weld jira
Hi Emily,
a brief description would be helpful - it's not a trivial
deployment/reproducer.
Martin
Dne 16.11.2015 v 23:15 Emily Jiang napsal(a):
I'm trying to deploy the attached war but got Weld alidation
error. On
Glassfish 4.1, I got this error:
Error occurred during deployment: Exception while loading the app : CDI
deployment failure:WELD-001408: Unsatisfied dependencies for type String
with qualifiers @DiffBDACounterQualifier at injection point
[BackedAnnotatedField] @Inject @DiffBDACounterQualifier
com.ibm.jcdi.test.beansxml.CounterProducerConsumerModified.diffBDAProducer
at
com.ibm.jcdi.test.beansxml.CounterProducerConsumerModified.diffBDAProducer(CounterProducerConsumerModified.java:0)
WELD-001475: The following beans match by type, but none have
matching
qualifiers: - Producer Method [String] with qualifiers
[@CounterUnmodifiedQualifier @Any] declared as [[BackedAnnotatedMethod]
@ExcludeClassInterceptors @Produces @CounterUnmodifiedQualifier
com.ibm.jcdi.test.beansxml.CounterProducerNoModifiers.getCounterBeanProducer()],
- Producer Method [String] with qualifiers [@BatchProperty @Any]
declared as [[UnbackedAnnotatedMethod] @Produces @Dependent
@BatchProperty public com.ibm.jbatch.container.cdi.BatchProducerBean.p
.... msg.seeServerLog
The app works fine on OpenWebBeans. Any ideas on what was wrong?
Many thanks,
Emily
===========================
Emily Jiang
WebSphere Application Server, CDI Development Lead
MP 211, DE3A20, Winchester, Hampshire, England, SO21 2JN
Phone: +44 (0)1962 816278 Internal: 246278
Email: emijiang(a)uk.ibm.com
Lotus Notes: Emily Jiang/UK/IBM@IBMGB
--
Martin Kouba
Software Engineer
Red Hat, Czech Republic