camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ranx <brad.john...@mediadriver.com>
Subject Re: CamelBlueprintTestSupport No bean could be found in the registry
Date Fri, 05 Feb 2016 01:14:57 GMT
How are you setting up the service in the first bundle?  How are you
referring to it in the second bundle?

If you are actually using the bundle during your test then as Quinn pointed
out you needn't use the override method.  I suspect it is the service
declaration in the first bundle that is off or you aren't grabbing the
reference in the second bundle.

To declare your service and register it in the first bundle you add this to
the blueprint:

<service interface="com.foo.MyService" ref="myServiceImpl" />
<bean id="myServiceImpl" class="com.foo.internal.MySerivceImpl"/>

Then in the consuming bean you have to have the reference:

<reference id="mySerivceRef" interface="com.foo.MyService" />

The service is keyed in the OSGi registry by its interface name and not by
any reference name.  So the reference here is telling the registry to look
for something proxied to that interface and set it to the id of
myServiceRef.  Inside your consuming blueprint file you then use the
myServiceRef as if it were any other bean.  If you actually examine it
though you'll see it is a proxy class that acts as a facade with that
interface.

If you still can't get it maybe post the blueprint snippets.



--
View this message in context: http://camel.465427.n5.nabble.com/CamelBlueprintTestSupport-No-bean-could-be-found-in-the-registry-tp5777228p5777248.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Mime
View raw message