aries-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From KcTang <kct...@big2.net>
Subject blueprint works with 0.2-incubating, but not 0.3
Date Sun, 20 Feb 2011 07:36:04 GMT
Hi!

I'm trying to provide blueprint services in my embedded felix container.

To do this, i've developed a very simple echo service bundle that has a
/OSGI-INF/blueprint/config.xml that looks like:

<?xml version="1.0" encoding="UTF-8"?>
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0" >
    <bean id="es1" class="play.echo.service1.EchoService1"
init-method="start" >
    </bean>
    <service ref="es1" interface="play.echo.service1.EchoService1Interface"
/>
</blueprint>

---
The embedded osgi container in my application has these bundles (before
installing aries blueprint):

g! lb
START LEVEL 2
   ID|State      |Level|Name
    0|Active     |    0|System Bundle (3.0.8)
    1|Active     |    1|OPS4J Pax Logging - API (1.6.0)
    2|Active     |    1|OPS4J Pax Logging - Service (1.6.0)
    3|Active     |    1|OPS4J Pax Url - mvn: (1.2.5)
    4|Active     |    1|osgi.cmpn (4.2.0.200908310645)
    5|Active     |    2|Apache Felix Gogo Command (0.8.0)
    6|Active     |    2|Apache Felix Gogo Runtime (0.8.0)
    7|Active     |    2|Apache Felix Gogo Shell (0.8.0)
    8|Active     |    2|Apache Felix Bundle Repository (1.6.4)

---

With 0.2-incubating, I am able to get my echo service bundle to run properly
if i install these blueprint bundles first:

install
mvn:org.apache.aries.blueprint/org.apache.aries.blueprint/0.2-incubating
install mvn:org.apache.aries/org.apache.aries.util/0.2-incubating
# start blueprint's bundle id, then:
install mvn:play.echo/echo-service1/1.0-SNAPSHOT
# start my bundle id

Observation: echo-service1 bundle is "Active". the EchoService1.start()
method actually gets called when echo-service1's bundle is started.

I also noticed that this is the version that Apache Karaf 2.1.3 is using
(and my echo-service1 bundle works well there too).

---
However, if i install my bundle after installing 0.3 bundles like this:

install mvn:org.apache.aries.blueprint/org.apache.aries.blueprint/0.3
install mvn:org.apache.aries/org.apache.aries.util/0.3
install mvn:org.apache.aries.proxy/org.apache.aries.proxy.api/0.3
# start blueprint's bundle id, then:
install mvn:play.echo/echo-service1/1.0-SNAPSHOT
# start my bundle id

Observation: echo-service1 bundle is "Active". However, both EchoService1's
constructor and EchoService1.start() method is not called at all.

---

Very much appreciated if someone can let me know what is wrong here and
provide a solution to this.

Mime
View raw message