Hi,

I am currently developing a G-Reg feature[1] and for that I use a 3rd party
library called membrane-soa-model. This library uses Groovy 2.0 which needs
ASM 4. I created an osgi bundle for the membrane. If we run the Registry
server ASM 3 bundle also get Active as product-AS uses it.  When both ASM 3
and ASM 4 bundles are in Active state my feature gives an error as membrane
accesses ASM3 bundle.

11 ACTIVE      asm_3.1.0.wso2v1

12 ACTIVE      asm_4.0_1.0.0

I want membrane OSGI to use ASM4 only, to achieve this I introduce ASM 4
with proper osgi versioning and introduce groovy and asm as
private-packages. But couldn't resolve the problem. Below is what I added
in membrane osgi POM,

<instructions>
                        <Bundle-Name>${project.artifactId}</Bundle-Name>

<Bundle-SymbolicName>${project.groupId}.${project.artifactId}</Bundle-SymbolicName>
                        <Bundle-Description>OSGI version of ${project.name
}</Bundle-Description>
                        <Export-Package>com.predic8.*</Export-Package>
                        <Private-Package>
                            org.codehaus.groovy;version="2.0.4",
                            org.ow2.asm;version="4.0",
                        </Private-Package>
                        <Import-Package>
                         !com.predic8.*,
                         !org.ow2.asm,
                         !org.codehaus.groovy,
                         *;resolution:=optional
                        </Import-Package>
</instructions>

What is the proper way to overcome this issue?

[1] https://redmine.wso2.com/issues/3403
-- 
-- 
Sithumini Senevirathne
Software Engineer
WSO2 Inc. - lean . enterprise . middleware |  wso2.com

email: sithumi...@wso2.com,   mobile: +94 756977999
_______________________________________________
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to