This content has been marked as final.
Show 4 replies
-
1. Re: AmbiguousResolutionException when extending a base class
nickarls Aug 16, 2010 7:26 AM (in response to jsl123.john.lister-seam.kickstone.com)Show the hierarchy and what you're @Inject:ing
-
2. Re: AmbiguousResolutionException when extending a base class
jsl123.john.lister-seam.kickstone.com Aug 16, 2010 7:03 PM (in response to jsl123.john.lister-seam.kickstone.com)Hi, thanks for your reply..
The actual error is (I've split the class list up for clarity) The full exception trace is at the end
org.jboss.weld.exceptions.AmbiguousResolutionException: WELD-001318 Cannot resolve an ambiguous dependency between [
org.jboss.weld.bean-/C:/src/java/PriceGoblin/PriceGoblinWeb/build/web/-ManagedBean-class Product,
org.jboss.weld.bean-/C:/src/java/PriceGoblin/PriceGoblinWeb/build/web/-ManagedBean-class Search,
org.jboss.weld.bean-/C:/src/java/PriceGoblin/PriceGoblinWeb/build/web/-ManagedBean-class Base,
org.jboss.weld.bean-/C:/src/java/PriceGoblin/PriceGoblinWeb/build/web/-ManagedBean-class Account,
org.jboss.weld.bean-/C:/src/java/PriceGoblin/PriceGoblinWeb/build/web/-ManagedBean-class Home]
Whereby all the above extend Base and are defined as such:
@Path("/product/")
@ManagedBean
public class Product extends Base {
...
}
and within the resource classes I do injection such as
@Inject UserBean user;
@Inject SiteBean siteBean;
@EJB AccountBean accountBean;
where by the first 2 are CDI beans (using @Named) and don't extend anything, whereas the latter is a standard stateless EJB again not extending any other class. Base is a simple POJO and doesn't have any injection. Finally I don't inject any of the above resources into anything else, I'm making them managed purely to allow me to inject additional beans.
Thanks
John
full exception stack:
org.jboss.weld.exceptions.AmbiguousResolutionException: WELD-001318 Cannot resolve an ambiguous dependency between [org.jboss.weld.bean-/C:/src/java/PriceGoblin/PriceGoblinWeb/build/web/-ManagedBean-class com.kickstone.pricegoblin.resources.Product, org.jboss.weld.bean-/C:/src/java/PriceGoblin/PriceGoblinWeb/build/web/-ManagedBean-class com.kickstone.pricegoblin.resources.Search, org.jboss.weld.bean-/C:/src/java/PriceGoblin/PriceGoblinWeb/build/web/-ManagedBean-class com.kickstone.pricegoblin.resources.Base, org.jboss.weld.bean-/C:/src/java/PriceGoblin/PriceGoblinWeb/build/web/-ManagedBean-class com.kickstone.pricegoblin.resources.Account, org.jboss.weld.bean-/C:/src/java/PriceGoblin/PriceGoblinWeb/build/web/-ManagedBean-class com.kickstone.pricegoblin.resources.Home]
at org.jboss.weld.manager.BeanManagerImpl.resolve(BeanManagerImpl.java:1160)
at com.sun.jersey.server.impl.jcdi.JCDIComponentProviderFactory.getBean(JCDIComponentProviderFactory.java:244)
at com.sun.jersey.server.impl.jcdi.JCDIComponentProviderFactory.init(JCDIComponentProviderFactory.java:103)
at com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:654)
at com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:589)
at com.sun.jersey.spi.container.servlet.ServletContainer.initiate(ServletContainer.java:403)
at com.sun.jersey.spi.container.servlet.ServletContainer$InternalWebComponent.initiate(ServletContainer.java:252)
at com.sun.jersey.spi.container.servlet.WebComponent.load(WebComponent.java:550)
at com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:201)
at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:307)
at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:470)
at javax.servlet.GenericServlet.init(GenericServlet.java:242)
at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1428)
at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:1060)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:187)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:188)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:641)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:97)
at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:85)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:185)
at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:325)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:226)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:165)
at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:791)
at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:693)
at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:954)
at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:170)
at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:135)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:102)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:88)
at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76)
at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:53)
at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:57)
at com.sun.grizzly.ContextTask.run(ContextTask.java:69)
at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:330)
at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:309)
at java.lang.Thread.run(Thread.java:619) -
3. Re: AmbiguousResolutionException when extending a base class
pmuir Aug 20, 2010 6:17 AM (in response to jsl123.john.lister-seam.kickstone.com)This smells like a Weld/GlassFish integration problem - can you open a thread in the GlassFish forum and link it back to this thread for us. Siva will be able to investigate for you then.
-
4. Re: AmbiguousResolutionException when extending a base class
jsl123.john.lister-seam.kickstone.com Aug 26, 2010 5:55 AM (in response to jsl123.john.lister-seam.kickstone.com)Hi, thanks for replying. Apparently this was (it has been fixed in a later revision that included with glassfish - which I'd not spotted) a jersey issue. I could originally only find a reference to a similar issue under Jersey that suggested it was a Weld problem, hence my post here.
Cheers
John