Hi guys

I'm pretty new on this discussion list, so i'll say hello to you all.

I have a problem with some OSGi bundles I developed and being used from a
RCP application.
The short description follows:

The RCP application uses an API (simple Java interfaces and some abstract
classes that uses javax.jms package) declared into a bundle and exported by
it (this bundle exports both javax.jms package from a jar file and my API
package, my.package.itf). The API is available to the RCP application by a
require-bundle directive to this API bundle.

There are also 3 other OSGi bundles, each of them importing these two
packages by a require-bundle directive to the API bundle. Each of these 3
packages represents a different version of JMS messaging (Jboss msg, Jboss
mq, ActiveMQ), and every one of them has inside them the required JBoss
libraries for making a connection to a messaging server. The connection &
communication is done by implementing the interfaces the API bundle exports.
Also, each of these 3 bundles register different implementations of the same
interface, using different properties.

I get those

Now, the problem is that when i try to connect from my RCP application to
different messaging servers: it seems that the bundles share at a certain
point a single class path, because if i try to connect first to a JBoss Msg,
it succeeds, but after that if i try to connect to a ActiveMQ or Jboss MQ
server (multiple live connections must be handled), I retrieve the correct
implementation by a ServiceTracker but it seems to use the class path of the
first messaging bundle, and from here it derives to
"ClassNotFoundException", which are normal when you would use some libraries
from a certain type server to connect to another type of server.

Anyone can help me with this?

Thanks & regards,
Daniel
_______________________________________________
equinox-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/equinox-dev

Reply via email to