And what about EAR shared libs? Is there any potential problems? On 7 February 2012 15:49, Mark Struberg <[email protected]> wrote:
> No, not as long as the JAR has a META-INF/beans.xml in it. > > > I'm not yet sure in which configuration Geronimo ships OpenWebBeans. > Usually we 'ignore' most of the BDA restrictions of the CDI-1.0 spec > because they are really broken. They will got reworked/dropped in CDI-1.1 > anyway... > > Depending on this you might be careful because a few things wont work if > the BDA modus is enabled. If it's enabled in Geronimo by default, then I > _highly_ suggest to disable it manually by providing a > META-INF/openwebbeans/openwebbeans.properties where you set > org.apache.webbeans.useBDABeansXMLScanner = false > > Btw, this BDA 'feature' is the reason for about 50% of all JBossAS, Weld > and Glassfish bug reports in the CDI area ;) > > LieGrue, > strub > > > > > >________________________________ > > From: Adme Admirolas <[email protected]> > >To: [email protected]; Mark Struberg <[email protected]> > >Sent: Tuesday, February 7, 2012 2:33 PM > >Subject: Re: Geronimo 3.0 and CDI > > > > > >Thanks for quick response. I found my mistake by myself. I have added > beans.xml not to web-inf, but to meta-inf folder. After moving that file, > problem is solved. > > > >I got one more question. You have asked where "Injectable" class stored. > Is there going to be some problems, if that class would be in JAR in > WEB-INF/lib? > > > >Admirolas > > > > > >On 7 February 2012 14:30, Mark Struberg <[email protected]> wrote: > > > >Hi! > >> > >>First a small hint: you don't need to use @Default explicitly because > it's assumed if no other Qualifier (than @Named) is set. > >> > >>Second: you sure have the beans.xml marker files? > >> > >> > >>Where is this class 'Injectable' exactly stored? A JAR in WEB-INF/lib, > in WEB-INF/classes or an ear shared lib? > >> > >>LieGrue, > >>strub > >> > >>>________________________________ > >>> From: Adme Admirolas <[email protected]> > >>>To: [email protected] > >>>Sent: Tuesday, February 7, 2012 1:07 PM > >>>Subject: Geronimo 3.0 and CDI > >> > >>> > >>> > >>>Hello, > >>> > >>>I'm failing to create simple web app and deploy it to Geronimo. I'm > trying to create simple servlet, and inject POJO using CDI. > >>> > >>>Here is my Servlet class: > >>> > >>> > >>>@WebServlet("/TestServlet") > >>>>public class TestServlet extends HttpServlet { > >>>> private static final long serialVersionUID = 1L; > >>>> > >>>> @Inject > >>>> private InjectableInterface inj; > >>>> > >>>> public TestServlet() { > >>>> super(); > >>>> } > >>>>} > >>>> > >>>Here is InjectableInterface.java: > >>> > >>> > >>>public interface InjectableInterface { > >>>> > >>>>} > >>>> > >>>Here is implementation of interface: > >>> > >>> > >>>@Default > >>>>public class Injectable implements InjectableInterface { > >>>> > >>>>} > >>>> > >>>But when I deploy war to geronimo 3, i get this exception: > >>> > >>> > >>>javax.enterprise.inject.UnsatisfiedResolutionException: Api type > [test.InjectableInterface] is not found with the qualifiers > >>Qualifiers: [@javax.enterprise.inject.Default()] > >>for injection into Field Injection Point, field name : inj, Bean Owner > : [TestServlet, Name:null, WebBeans Type:MANAGED, API Types:[], > Qualifiers:[]] > org.apache.webbeans.util.InjectionExceptionUtils.throwUnsatisfiedResolutionException(InjectionExceptionUtils.java:92) > org.apache.webbeans.container.ResolutionUtil.checkResolvedBeans(ResolutionUtil.java:98) > org.apache.webbeans.container.InjectionResolver.getInjectionPointBean(InjectionResolver.java:265) > org.apache.webbeans.inject.OWBInjector.getInjectedObjectReference(OWBInjector.java:229) > org.apache.webbeans.inject.OWBInjector.inject(OWBInjector.java:146) > org.apache.webbeans.inject.OWBInjector.inject(OWBInjector.java:94) > org.apache.geronimo.j2ee.annotation.Holder.newInstance(Holder.java:185) > org.apache.geronimo.tomcat.TomcatInstanceManager.newInstance(TomcatInstanceManager.java:74) > org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:850) > >> org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:48) > org.apache.geronimo.tomcat.valve.ProtectedTargetValve.invoke(ProtectedTargetValve.java:53) > >>>What I'm doing wrong? Could anyone help me? > >>> > >>>Admrolas > >>> > >>> > >>> > >> > > > > > > >
