I managed to resolve this by running my grails application (which works as an osgi container) without dynamic code reloading feature, which seems to rely on spring loaded.

There are no dependencies on anything remotely related to spring in my bundles.

On 20.01.2015 21:43, Neil Bartlett wrote:
Felix SCR does not interfere with Spring loading. SCR has nothing to do with 
Spring. This error has come from your own class in your bundle… by installing 
SCR you have now for the first time loaded the class (or rather, attempted to 
load it), so now you see the problem for the first time.

The stack trace suggests that you have a dependency on the 
‘org.springsource.loaded.ri’ package, and therefore need to list it in your 
Import-Package statement.

Regards,
Neil

On 20 Jan 2015, at 18:27, Artem Zhirkov <a...@develdynamic.com> wrote:

I installed felix scr bundle into my host osgi application and tried to obtain 
a list of active services by visiting a controller of my spring application 
which calls osgi code and it threw the following error:

| Error java.lang.NoClassDefFoundError: 
org/springsource/loaded/ri/ReflectiveInterceptor
| Error     at 
org.apache.felix.scr.impl.manager.SingleComponentManager.createImplementationObject(SingleComponentManager.java:253)
| Error     at 
org.apache.felix.scr.impl.manager.SingleComponentManager.createComponent(SingleComponentManager.java:127)
| Error     at 
org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:871)
| Error     at 
org.apache.felix.scr.impl.manager.SingleComponentManager.getServiceInternal(SingleComponentManager.java:838)
| Error     at 
org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:777)
| Error     at 
org.apache.felix.framework.ServiceRegistrationImpl.getFactoryUnchecked(ServiceRegistrationImpl.java:320)
| Error     at 
org.apache.felix.framework.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:231)
| Error     at 
org.apache.felix.framework.ServiceRegistry.getService(ServiceRegistry.java:327)

Full stack trace available at http://paste.ubuntu.com/9796839/


It seems like felix scr interferes with spring loaded? Is it possible to avoid 
this?


Thanks

On 20.01.2015 18:08, Artem Zhirkov wrote:
Neil,
bundle is active, but I dont have any DS implementation bundle installed...I 
thought the framework itself contains the implementation.

On 01/20/2015 03:19 PM, Neil Bartlett wrote:
Dirk: I don’t think Artem was asking about activation of the component, he has 
a problem with service registration. So whether the component is immediate or 
delayed seems to be irrelevant.

Artem: there are a few things you need to check. Is your bundle active? Do you 
have a DS implementation bundle (such as org.apache.felix.scr, or 
org.eclipse.equinox.ds) installed and active?

Regards,
Neil


On 20 Jan 2015, at 11:09, Dirk Rudolph <dirk.rudo...@netcentric.biz> wrote:

Try to add immediate=“true” to your component definition. This should result in 
something like

<?xml version="1.0" encoding="UTF-8"?><components 
xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0";>
   <scr:component immediate=“true” name="ru.multicabinet.gateway.ExampleDS">
       <implementation class="ru.multicabinet.gateway.ExampleDS"/>
       <service servicefactory="false">
           <provide interface="ru.multicabinet.gateway.SimpleI"/>
       </service>
       <property name="service.pid" value="ru.multicabinet.gateway.ExampleDS"/>
   </scr:component>
</components>
and causes the component to be started immediately after it has been registered.

Kind regards,
Dirk Rudolph | Senior Software Engineer

Netcentric AG

M: +41 79 642 37 11
D: +49 174 966 84 34

dirk.rudo...@netcentric.biz <mailto:dirk.rudo...@netcentric.biz> | www.netcentric.biz 
<http://www.netcentric.biz/>
On 20 Jan 2015, at 11:53, Artem Zhirkov <a...@develdynamic.com> wrote:

Hello,

I want to include more than one service into a bundle, so it seems like I have 
to make a use of declarative services.

I'm building a test bundle with maven + maven-bundle-plugin and generating the 
ds descriptor with maven-scr-plugin, so it looks like this:

<?xml version="1.0" encoding="UTF-8"?><components 
xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0";>
   <scr:component name="ru.multicabinet.gateway.ExampleDS">
       <implementation class="ru.multicabinet.gateway.ExampleDS"/>
       <service servicefactory="false">
           <provide interface="ru.multicabinet.gateway.SimpleI"/>
       </service>
       <property name="service.pid" value="ru.multicabinet.gateway.ExampleDS"/>
   </scr:component>
</components>

After installing the test bundle into my osgi container I'm trying to get a 
list of all services in the test bundle by calling 
bundle.getRegisteredServices(), but it'd always return null.

What I'm doing wrong? Maybe  I should use ServiceTracker to obtain a reference 
to ds service?

Thanks


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@felix.apache.org
For additional commands, e-mail: users-h...@felix.apache.org

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@felix.apache.org
For additional commands, e-mail: users-h...@felix.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@felix.apache.org
For additional commands, e-mail: users-h...@felix.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@felix.apache.org
For additional commands, e-mail: users-h...@felix.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@felix.apache.org
For additional commands, e-mail: users-h...@felix.apache.org




---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@felix.apache.org
For additional commands, e-mail: users-h...@felix.apache.org

Reply via email to