[weld-dev] CODI and JBoss AS 6 final: ProjectStageActivationExtension didn't implement the Extension interface

Peter Muir pmuir at redhat.com
Tue Jan 4 05:33:59 EST 2011


Mark can tell you for sure, as this is owb territory ;-)

--
Pete Muir
http://in.relation.to/Bloggers/Pete

On 4 Jan 2011, at 08:57, Michael Schütz <michaelschuetz83 at gmail.com> wrote:

> Thanks, Dan - I will try this the next days.
> 
> So commenting out <listener><listener-class>org.apache.webbeans.servlet.WebBeansConfigurationListener</listener-class></listener> in web.xml is just fine, technically?
> 
> 
> Thanks
> Michael
> 
> 
> 2011/1/4 Dan Allen <dan.j.allen at gmail.com>
> Michael,
> 
> To use MyFaces on JBoss AS 6, you need to provide a hint as described here:
> 
> http://community.jboss.org/wiki/JSFonJBossAS6
> 
> Feel free to propagate that information.
> 
> -Dan
> 
> 
> On Mon, Jan 3, 2011 at 6:48 PM, Michael Schütz <michaelschuetz83 at gmail.com> wrote:
> This is interesting:
> 
> As recommended, I did only keep myfaces-extcdi-* jars.
> 
> This resulted in:
> Error configuring application listener of class org.apache.webbeans.servlet.WebBeansConfigurationListener: java.lang.ClassNotFoundException: org.apache.webbeans.servlet.WebBeansConfigurationListener
> Error configuring application listener of class org.apache.myfaces.webapp.StartupServletContextListener: java.lang.ClassNotFoundException: org.apache.myfaces.webapp.StartupServletContextListener
> 
> WebBeansConfigurationListener is contained in openwebbeans-web-1.0.0.jar and StartupServletContextListener in myfaces-impl-2.0.3.jar.
> 
> So I did comment out Listener in web.xml:
>   <!-- 
>   <listener>
>     <listener-class>org.apache.webbeans.servlet.WebBeansConfigurationListener</listener-class>
>   </listener>
> 
>   <listener>
>     <listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
>   </listener>
>   -->
>   
> After that server starts fine, using Mojarra 2.0.3.
> Applications works partially as expected:
> * JSF2 RequestScope does work as expected
> * JSF2 ViewScope does _not_ work: it seems not to be initialized
> * CODI Conversation and CODI Window-Scope do work as expected
> * CODI ViewAccessScoped does _not_ work as expected: it has been initialized, but never expires
> 
> Not commenting out <listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class> causes:
> class org.apache.myfaces.webapp.StartupServletContextListener: java.lang.ClassNotFoundException: org.apache.myfaces.webapp.StartupServletContextListener
> 
> This is quite strange, as this class is provided in myfaces-impl-2.0.1.jar shipped with AS. Seems to be a classloading issue - right?
> 
> So, are this still project configuration troubles: wrong Listener used etc? Or is it more likely to be a bug?
> 
> 
> Thanks a lot
> Michael
> 
> 2011/1/3 Mark Struberg <struberg at yahoo.de>
> 
> Hi Michael!
> 
> What definitely needs to be removed:
> 
> * geronimo-*_spec (all the specs are already included in JBOSS)
> * jsr250-api
> * openwebbeans*
> * scannotation
> * myfaces-impl
> * myfaces-api
> 
> you should also be able to remove all the commons stuff...
> 
> 
> The only things you need are basically the myfaces-extcdi-* jars.
> 
> LieGrue,
> strub
> 
> 
> --- On Mon, 1/3/11, Michael Schütz <michaelschuetz83 at gmail.com> wrote:
> 
> From: Michael Schütz <michaelschuetz83 at gmail.com>
> Subject: Re: [weld-dev] CODI and JBoss AS 6 final: ProjectStageActivationExtension didn't implement the Extension interface
> To: "Peter Muir" <pmuir at redhat.com>
> Cc: "weld-dev at lists.jboss.org" <weld-dev at lists.jboss.org>
> Date: Monday, January 3, 2011, 10:34 AM
> 
> Pete, I already did that: I did remove geronimo-jcdi and javassist.
> 
> Current error:
> 11:19:22,486 ERROR [org.jboss.kernel.plugins.dependency.AbstractKernelController] Error installing to Start: name=vfs:///C:/01-Development/Projekte/CODI/jboss-6.0.0.Final/server/default/deploy/myfaces-cdi-1.0.2-SNAPSHOT.war_WeldBoo
> 
> n: WELD-001409 Ambiguous dependencies for type [MessageContext] with qualifiers [@Default] at injection point [[parameter 1] of [method] @Produces @Dependent @Jsf @Named public org.apache.myfaces.extensions.cdi.jsf.impl.message.Jsf
> 
> ssageFactory>, Instance<ELProvider>, Instance<ArgumentFilter>)]. Possible dependencies [[Producer Method [MessageContext] with qualifiers [@Any @Default] declared as [[method] @Produces @Dependent @Jsf @Named public org.apache.myfa
> 
> eateContext(MessageContext, Instance<MessageFactory>, Instance<ELProvider>, Instance<ArgumentFilter>)], Managed Bean [class org.apache.myfaces.extensions.cdi.message.impl.DefaultMessageContext] with qualifiers [@Any @Default]]]
> 
>         at org.jboss.weld.bootstrap.Validator.validateInjectionPoint(Validator.java:309) [:6.0.0.Final]
> 
> 
> Please find screenshot attached with current WEB-INF/lib directory.
> Are you saying removing everything but myfaces-extcdi-*.jar is expected to work?
> 
>        
>        
> Thanks
> Michael       
>        
> 
> 2011/1/3 Peter Muir <pmuir at redhat.com>
> 
> Do what I said and remove javassist.
> 
> --Pete Muirhttp://in.relation.to/Bloggers/Pete
> 
> On 2 Jan 2011, at 22:34, Michael Schütz <michaelschuetz83 at gmail.com> wrote:
> 
> 
> Thanks Dan and Pete for your replys.
> 
> I did remove geronimo-jcdi and got:
> 23:14:08,172 ERROR [org.jboss.kernel.plugins.dependency.AbstractKernelController] Error installing to Start: name=vfs:///C:/01-Development/Projekte/CODI/jboss-6.0.0.Final/server/default/deploy/myfaces-cdi-1.0.2-SNAPSHOT.war_WeldBootstrapBean state=Create: java.lang.ClassCastException: org.jboss.weld
> 
> 
> .security.org$jboss$weld$bean-jboss$classloader:id="vfs:$$$C:$01-Development$Projekte$CODI$jboss-6$0$0$Final$server$default$deploy$myfaces-cdi-1$0$2-SNAPSHOT$war"-Built-in-Principal_$$_WeldProxy cannot be cast to javassist.util.proxy.ProxyObject
> 
> 
>         at org.jboss.weld.bean.proxy.ProxyFactory.create(ProxyFactory.java:248) [:6.0.0.Final]
>         at org.jboss.weld.bean.builtin.ee.AbstractEEBean.<init>(AbstractEEBean.java:46) [:6.0.0.Final]
> 
> So, I removed javassist in the next step and i got:
> 
> 
> 23:17:31,816 ERROR [org.jboss.kernel.plugins.dependency.AbstractKernelController] Error installing to Start: name=vfs:///C:/01-Development/Projekte/CODI/jboss-6.0.0.Final/server/default/deploy/myfaces-cdi-1.0.2-SNAPSHOT.war_WeldBootstrapBean state=Create: org.jboss.weld.exceptions.DeploymentExceptio
> 
> 
> n: WELD-001409 Ambiguous dependencies for type [MessageContext] with qualifiers [@Default] at injection point [[parameter 1] of [method] @Produces @Dependent @Jsf @Named public org.apache.myfaces.extensions.cdi.jsf.impl.message.JsfAwareMessageContextProducer.createContext(MessageContext, Instance<Me
> 
> 
> ssageFactory>, Instance<ELProvider>, Instance<ArgumentFilter>)]. Possible dependencies [[Producer Method [MessageContext] with qualifiers [@Any @Default] declared as [[method] @Produces @Dependent @Jsf @Named public org.apache.myfaces.extensions.cdi.jsf.impl.message.JsfAwareMessageContextProducer.cr
> 
> 
> eateContext(MessageContext, Instance<MessageFactory>, Instance<ELProvider>, Instance<ArgumentFilter>)], Managed Bean [class org.apache.myfaces.extensions.cdi.message.impl.DefaultMessageContext] with qualifiers [@Any @Default]]]
> 
> 
>         at org.jboss.weld.bootstrap.Validator.validateInjectionPoint(Validator.java:309) [:6.0.0.Final]
> 
> Seams like myfaces-extcdi-message-module-impl-0.9.1.jar causes the troubles. Any thoughts what needs to be done?
> 
> 
> 
> 
> Thanks
> Michael
> 
> 
> 2011/1/1 Pete Muir <pmuir at redhat.com>
> 
> 
> 
> 
> On 31 Dec 2010, at 17:39, Dan Allen wrote:
> 
> 
> 
> > It's more than likely geronimo-jcdi jar that's causing the problem. Weld looks to see if Extension class equals Extension class and since there are two independent instances on the classpath, it breaks the comparison. 9/10 this is the source of a class not found problem.
> 
> 
> 
> >
> 
> > Java EE APIs should never be provided by an archive when deploying to a compliant app server. If you were moving from Tomcat to JBoss AS it's important to keep that in mind.
> 
> >
> 
> > I doubt the apache-commons libraries would present a problem, so you can likely leave those.
> 
> 
> 
> They (used to at least) cause problems with RichFaces.
> 
> 
> 
> In general until AS7 I would recommend not duplicating libs in your war that in the AS, it will cause you a lot less problems in the long run :-D
> 
> 
> 
> 
> 
> >
> 
> > -Dan
> 
> >
> 
> > On Fri, Dec 31, 2010 at 11:00 AM, Pete Muir <pmuir at redhat.com> wrote:
> 
> 
> > Aha, as I thought you are bundling in the war all sorts of stuff which AS6 provides (and doesn't support overriding simply by placing in the war).
> 
> >
> 
> > Try removing at least:
> 
> >
> 
> > * geronimo*
> 
> > * javassist
> 
> > * jsr250-api
> 
> > * myfaces-api
> 
> > * myfaces-impl
> 
> > * openwebbeans*
> 
> > * scannotation
> 
> >
> 
> > you may also need to remove commons-XXX which duplicate that in the AS
> 
> >
> 
> > HTH
> 
> >
> 
> >
> 
> > On 31 Dec 2010, at 15:42, Michael Schütz wrote:
> 
> >
> 
> > > Please see attached screenshot.
> 
> > >
> 
> > > Thanks
> 
> > > Michael
> 
> > >
> 
> > > 2010/12/31 Pete Muir <pmuir at redhat.com>
> 
> 
> > > No idea.
> 
> > >
> 
> > > What jars are placed in WEB-INF/lib?
> 
> > >
> 
> > > On 31 Dec 2010, at 15:19, Michael Schütz wrote:
> 
> > >
> 
> > > > Thanks for reply, Pete.
> 
> > > >
> 
> > > > Already spoke to CODI team. They do implement Extension. Doesn't look like CODI bug for them.
> 
> > > >
> 
> > > > So, does this CDI POM config look strange:
> 
> > > > <!-- MyFaces CODI -->
> 
> > > >     <dependency>
> 
> > > >       <groupId>org.apache.myfaces.extensions.cdi.core</groupId>
> 
> > > >       <artifactId>myfaces-extcdi-core-api</artifactId>
> 
> > > >       <version>${myfaces_codi.version}</version>
> 
> > > >       <scope>compile</scope>
> 
> > > >     </dependency>
> 
> > > >
> 
> > > >     <dependency>
> 
> > > >       <groupId>org.apache.myfaces.extensions.cdi.core</groupId>
> 
> > > >       <artifactId>myfaces-extcdi-core-impl</artifactId>
> 
> > > >       <version>${myfaces_codi.version}</version>
> 
> > > >       <scope>runtime</scope>
> 
> > > >     </dependency>
> 
> > > >     <dependency>
> 
> > > >       <groupId>org.apache.myfaces.extensions.cdi.modules</groupId>
> 
> > > >       <artifactId>myfaces-extcdi-jsf20-module-api</artifactId>
> 
> > > >       <version>${myfaces_codi.version}</version>
> 
> > > >       <scope>compile</scope>
> 
> > > >     </dependency>
> 
> > > >
> 
> > > >       <dependency>
> 
> > > >         <groupId>org.apache.myfaces.extensions.cdi.modules</groupId>
> 
> > > >         <artifactId>myfaces-extcdi-jsf20-module-impl</artifactId>
> 
> > > >         <version>${myfaces_codi.version}</version>
> 
> > > >         <scope>runtime</scope>
> 
> > > >     </dependency>
> 
> > > >
> 
> > > >
> 
> > > > Cheers
> 
> > > > Michael
> 
> > > >
> 
> > > > 2010/12/31 Pete Muir <pmuir at redhat.com>
> 
> 
> > > >
> 
> > > > On 31 Dec 2010, at 14:37, Michael Schütz wrote:
> 
> > > >
> 
> > > > > Hi to all,
> 
> > > > >
> 
> > > > > would like to run CODI/MyFaces example within JBoss AS 6 final.
> 
> > > > > Getting:
> 
> > > > > WeldBootstrapBean state=Create: java.lang.RuntimeException: Service class or
> 
> > > > > g.apache.myfaces.extensions.cdi.core.impl.projectstage.ProjectStageActivationExtension didn't implement the Extension interface
> 
> > > > >
> 
> > > > >         at org.jboss.weld.util.ServiceLoader.loadClass(ServiceLoader.java:261) [:6.0.0.Final]
> 
> > > > >
> 
> > > > >         at org.jboss.weld.util.ServiceLoader.loadService(ServiceLoader.java:233) [:6.0.0.Final]
> 
> > > > >         at org.jboss.weld.util.ServiceLoader.loadServiceFile(ServiceLoader.java:194) [:6.0.0.Final]
> 
> > > > >
> 
> > > > >         at org.jboss.weld.util.ServiceLoader.reload(ServiceLoader.java:157) [:6.0.0.Final]
> 
> > > > >
> 
> > > > >         at org.jboss.weld.util.ServiceLoader.iterator(ServiceLoader.java:346) [:6.0.0.Final]
> 
> > > > >         at org.jboss.weld.bootstrap.ExtensionBeanDeployer.addExtensions(ExtensionBeanDeployer.java:93) [:6.0.0.Final]
> 
> > > > >
> 
> > > > >         at org.jboss.weld.bootstrap.WeldBootstrap.startInitialization(WeldBootstrap.java:333) [:6.0.0.Final]
> 
> > > > >
> 
> > > > >         at org.jboss.weld.integration.deployer.env.helpers.BootstrapBean.boot(BootstrapBean.java:92) [:6.0.0.Final]
> 
> > > > >
> 
> > > > >         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [:1.6.0_21]
> 
> > > > >
> 
> > > > >         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [:1.6.0_21]
> 
> > > > >         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [:1.6.0_21]
> 
> > > > >
> 
> > > > > Everything runs fine within Tomcat7.
> 
> > > > >
> 
> > > > > Already posted question at Weld forum without having much success: http://seamframework.org/Community/CODIAndJBossAS6FinalProjectStageActivationExtensionDidntImplementTheExtensionInterface
> 
> 
> 
> > > > >
> 
> > > > > What I would like to know:
> 
> > > > > 1) Is it not supposed to run?
> 
> > > >
> 
> > > > I would guess it is, but you should check with the CODI team.
> 
> > > >
> 
> > > > > 2) Is it project configuration issue?
> 
> > > >
> 
> > > > Possibly, it looks like it does really impl Extension so check you aren't bundling the CDI API in your war accidentally.
> 
> > > >
> 
> > > > > 3) Is it a bug? (JBoss, Weld? JIRA issue already filed)
> 
> > > >
> 
> > > > Probably not in JBoss or Weld.
> 
> > > >
> 
> > > > >
> 
> > > > >
> 
> > > > > thanks a lot
> 
> > > > > Michael
> 
> > > > > _______________________________________________
> 
> > > > > weld-dev mailing list
> 
> > > > > weld-dev at lists.jboss.org
> 
> 
> > > > > https://lists.jboss.org/mailman/listinfo/weld-dev
> 
> 
> > > >
> 
> > > >
> 
> > > > _______________________________________________
> 
> > > > weld-dev mailing list
> 
> > > > weld-dev at lists.jboss.org
> 
> 
> > > > https://lists.jboss.org/mailman/listinfo/weld-dev
> 
> 
> > >
> 
> > >
> 
> > > <codi_webinf_lib.png>
> 
> >
> 
> >
> 
> > _______________________________________________
> 
> > weld-dev mailing list
> 
> > weld-dev at lists.jboss.org
> 
> > https://lists.jboss.org/mailman/listinfo/weld-dev
> 
> 
> >
> 
> >
> 
> >
> 
> > --
> 
> > Dan Allen
> 
> > Principal Software Engineer, Red Hat | Author of Seam in Action
> 
> > Registered Linux User #231597
> 
> >
> 
> > http://mojavelinux.com
> 
> > http://mojavelinux.com/seaminaction
> 
> 
> > http://www.google.com/profiles/dan.j.allen
> 
> 
> > _______________________________________________
> 
> > weld-dev mailing list
> 
> > weld-dev at lists.jboss.org
> 
> > https://lists.jboss.org/mailman/listinfo/weld-dev
> 
> 
> 
> 
> 
> 
> _______________________________________________
> 
> weld-dev mailing list
> 
> weld-dev at lists.jboss.org
> 
> https://lists.jboss.org/mailman/listinfo/weld-dev
> 
> 
> 
> 
> 
> 
> 
> -----Inline Attachment Follows-----
> 
> _______________________________________________
> weld-dev mailing list
> weld-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/weld-dev
> 
> 
> 
> 
> 
> _______________________________________________
> weld-dev mailing list
> weld-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/weld-dev
> 
> 
> 
> -- 
> Dan Allen
> Principal Software Engineer, Red Hat | Author of Seam in Action
> Registered Linux User #231597
> 
> http://mojavelinux.com
> http://mojavelinux.com/seaminaction
> http://www.google.com/profiles/dan.j.allen
> 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/weld-dev/attachments/20110104/b37e0f26/attachment-0001.html 


More information about the weld-dev mailing list