Re: [Dev] Shipping Aries SPI Fly in AS (was: ServletContainerInitializer for AS)

2014-08-05 Thread Sagara Gunathunga
On Tue, Aug 5, 2014 at 4:44 PM, Kasun Gajasinghe  wrote:

> Hi,
>
> We have a need to bring Apache Aries SPI Fly to support Java Service
> Provider Interface API [1] for web applications. Java SPI do not work OOTB
> in OSGi environments, so Apache Aries has implemented the "OSGi
> ServiceLoader Mediator specification". Aries SPI Fly is pluggable and can
> be used in number of osgi frameworks including Equinox. [2]
>
> I have tested this and it works fine in AS 5.3.0/6.0.0 SNAPSHOT. The
> details on testing this can be found in the below mail including the list
> of needed libraries. The license is ASL 2.0. So, shall we bring this into
> our platform?
>

During the binary transport code review we discussed possible options in
detail and decided to include SPI Fly as a dependency for AS.

Thanks !

>
> [1] http://docs.oracle.com/javase/6/docs/api/java/util/ServiceLoader.html
> [2] https://aries.apache.org/modules/spi-fly.html
>
> Thanks,
> KasunG
>
> -- Forwarded message --
> From: Kasun Gajasinghe 
> Date: Fri, May 30, 2014 at 12:20 PM
> Subject: Re: ServletContainerInitializer for AS
> To: Sagara Gunathunga , Denuwanthi De Silva <
> denuwan...@wso2.com>, architecture 
> Cc: Chamil Jeewantha , Sameera Jayasoma  >
>
>
> 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 
> 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
>
>
>
>
>
> --
>
> *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
>
>
>



-- 
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
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


[Dev] Shipping Aries SPI Fly in AS (was: ServletContainerInitializer for AS)

2014-08-05 Thread Kasun Gajasinghe
Hi,

We have a need to bring Apache Aries SPI Fly to support Java Service
Provider Interface API [1] for web applications. Java SPI do not work OOTB
in OSGi environments, so Apache Aries has implemented the "OSGi
ServiceLoader Mediator specification". Aries SPI Fly is pluggable and can
be used in number of osgi frameworks including Equinox. [2]

I have tested this and it works fine in AS 5.3.0/6.0.0 SNAPSHOT. The
details on testing this can be found in the below mail including the list
of needed libraries. The license is ASL 2.0. So, shall we bring this into
our platform?

[1] http://docs.oracle.com/javase/6/docs/api/java/util/ServiceLoader.html
[2] https://aries.apache.org/modules/spi-fly.html

Thanks,
KasunG

-- Forwarded message --
From: Kasun Gajasinghe 
Date: Fri, May 30, 2014 at 12:20 PM
Subject: Re: ServletContainerInitializer for AS
To: Sagara Gunathunga , Denuwanthi De Silva <
denuwan...@wso2.com>, architecture 
Cc: Chamil Jeewantha , Sameera Jayasoma 


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  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





-- 

*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
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev