aries-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Charles Moulliard <ch0...@gmail.com>
Subject Aries Spi-Fly
Date Thu, 06 Sep 2012 06:57:06 GMT
Hi,

I deploy on Apache Karaf 2.2.7 a project where the code use ServiceLoader
of JDK. To turn it on this mechanism on Karaf, I have followed the
instruction defined here (
http://coderthoughts.blogspot.be/2011/08/javautilserviceloader-in-osgi.html)
and here (http://aries.apache.org/modules/spi-fly.html). The SPI provider
is well registered :

2012-09-06 08:24:54,485 | INFO  | l Console Thread | bundle
          | 87 - org.apache.aries.spifly.static.bundle - 1.0.0.SNAPSHOT |
Bundle Considered for SPI providers:
org.apache.deltaspike.cdictrl.deltaspike-cdictrl-weld
2012-09-06 08:24:54,486 | INFO  | l Console Thread | bundle
          | 87 - org.apache.aries.spifly.static.bundle - 1.0.0.SNAPSHOT |
Examining bundle for SPI provider:
org.apache.deltaspike.cdictrl.deltaspike-cdictrl-weld
2012-09-06 08:24:54,487 | INFO  | l Console Thread | bundle
          | 87 - org.apache.aries.spifly.static.bundle - 1.0.0.SNAPSHOT |
Found SPI resource:
bundle://65.1:0/META-INF/services/org.apache.deltaspike.cdise.api.CdiContainer
2012-09-06 08:24:54,487 | INFO  | l Console Thread | bundle
          | 87 - org.apache.aries.spifly.static.bundle - 1.0.0.SNAPSHOT |
Loaded SPI provider: class
org.apache.deltaspike.cdise.weld.WeldContainerControl
2012-09-06 08:24:54,488 | INFO  | l Console Thread | bundle
          | 87 - org.apache.aries.spifly.static.bundle - 1.0.0.SNAPSHOT |
Registered service:
org.apache.felix.framework.ServiceRegistrationImpl@655538e5
2012-09-06 08:24:54,489 | INFO  | l Console Thread | bundle
          | 87 - org.apache.aries.spifly.static.bundle - 1.0.0.SNAPSHOT |
Registered provider: org.apache.deltaspike.cdise.api.CdiContainer in bundle
org.apache.deltaspike.cdictrl.deltaspike-cdictrl-weld

deltaspike-cdictrl-weld (65) provides:
--------------------------------------
.org.apache.aries.spifly.provider.implclass =
org.apache.deltaspike.cdise.weld.WeldContainerControl
objectClass = org.apache.deltaspike.cdise.api.CdiContainer
service.id = 30
serviceloader.mediator = 87

but When the client (through an Activator class) tries to consume the
service, it is not able to find the service

public class Activator implements BundleActivator
{

    private static CdiContainer cdiContainer = null;

    public void start(BundleContext context) throws Exception
    {
        ServiceLoader<CdiContainer> cdiContainerLoader =
ServiceLoader.load(CdiContainer.class);
        Iterator<CdiContainer> cdiIt = cdiContainerLoader.iterator();
        if (cdiIt.hasNext()) // IS EMPTY


deltaspike-cdictrl-api (64)
---------------------------
SPI-Consumer = *
Bundle-Activator = org.apache.deltaspike.cdise.api.Activator ?


What could be the issue ?

Regards,

-- 
Charles Moulliard
Apache Committer / Sr. Pr. Consultant at FuseSource.com
Twitter : @cmoulliard
Blog : http://cmoulliard.blogspot.com

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message