Hi, As Kasun mentioned we can use the specified bundles and <Require-Capability>osgi.extender; filter:="(osgi.extender=osgi.serviceloader.registrar)"</Require-Capability> <Provide-Capability>osgi.serviceloader; osgi.serviceloader=javax.servlet.ServletContainerInitializer</Provide-Capability>
to expose the ServletContainerInitializer implementations via OSGi. When we create the OSGI bundle out of the said implementation, we can find those ServletContainerInitializers using, getOSGiServices(ServletContainerInitializer.class), method provided by PrivilegedCarbonContext class Thanks & Regards, Denuwanthi. On Fri, May 30, 2014 at 12:20 PM, Kasun Gajasinghe <[email protected]> wrote: > Hi Sagara, > > Denuwanthi is working on a solution for this problem using spi-fly. SPI > Fly provides a mechanism to expose Java Service Provider Interfaces via > OSGi. To make this work, > > 1. Add the following spi-fly and its dependency bundles to AS - Download > links are available at [1]. We need a make a Carbon feature out of this to > install in AS. @Denuwanthi, please note. > > SPI Fly Dynamic Weaving Bundle 1.0.0 > Aries Util 1.1.0 > ASM 4.0.0 > > 2. You need to make the Myfaces bundle a service provider of > javax.servlet.ServletContainerInitializer interface under the OSGi > environment. For that you need to add 'Require-Capability', and > 'Provide-Capability' Manifest headers as follows. > > Require-Capability: osgi.extender; > filter:="(osgi.extender=osgi.serviceloader.registrar)" > > Provide-Capability: osgi.serviceloader; osgi.serviceloader= > *javax.servlet.ServletContainerInitializer* > > 3. Since Tomcat uses a custom mechanism to load the service providers, you > do not need to add Consumer's manifest headers. Consumer part for webapps > is already handled by our solution. > [1] http://aries.apache.org/modules/spi-fly.html > > Regards, > KasunG > > > > On Fri, May 30, 2014 at 12:01 PM, Sagara Gunathunga <[email protected]> > wrote: > >> It looks like we need OSGI aware way to >> find ServletContainerInitializers. Myfaces use MyFacesContainerInitializer >> to register MyFaces Servlet but this is not pick up by the AS that's why >> JSF not work on ASTomEE. >> >> Thanks ! >> -- >> Sagara Gunathunga >> >> Senior Technical Lead; WSO2, Inc.; http://wso2.com >> V.P Apache Web Services; http://ws.apache.org/ >> Linkedin; http://www.linkedin.com/in/ssagara >> Blog ; http://ssagara.blogspot.com >> >> > > > -- > > *Kasun Gajasinghe*Senior Software Engineer, WSO2 Inc. > email: kasung AT spamfree wso2.com > linked-in: http://lk.linkedin.com/in/gajasinghe > blog: http://kasunbg.org > > > -- Denuwanthi De Silva Software Engineer; WSO2 Inc.; http://wso2.com, Email: [email protected]
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
