-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hello to all,

I've tried to wrap the FreePastry framework
(http://freepastry.rice.edu/FreePastry/FreePastry-2.1beta.jar) as an
OSGi bundle an use it from another bundle. The code using FreePastry is
from the tutorial on the website
(http://freepastry.org/FreePastry/tutorial/tut_multiple_nodes.html#lesson4).
I can also attach it, if it helps.

The bnd file for wrapping the jar looks as follows:

- --------------

Bundle-Version=2.1.0.beta
Private-Package: *
Export-Package:
!rice.tutorial.*,rice.environment.*;version=2.1.0.beta,rice.p2p.commonapi.*;version=2.1.0.beta,rice.pastry.*;version=2.1.0.beta
Import-Package: !org.junit.*,*;resolution:=optional

- --------------

The Manifest of my bundle (which uses the pastry bundle) looks like this:

- --------------

Manifest-Version: 1.0
Export-Package: de.hu_berlin.metrik.osgi.simulation.pastry;uses:="rice
 .environment,rice.pastry.leafset,rice.environment.params,rice.environ
 ment.time,rice.pastry,rice.pastry.socket,org.osgi.framework,rice.p2p.
 commonapi,rice.pastry.standard"
Built-By: haschemi
Tool: Bnd-0.0.238
Bundle-Name: de.hu_berlin.metrik.osgi.simulation.pastry
Created-By: Apache Maven Bundle Plugin
Bundle-Version: 0.0.1.SNAPSHOT
Build-Jdk: 1.6.0_04
Bnd-LastModified: 1212516599543
Bundle-ManifestVersion: 2
Bundle-Activator: de.hu_berlin.metrik.osgi.simulation.pastry.Activator
Import-Package: de.hu_berlin.metrik.osgi.simulation.pastry,org.osgi.fr
 amework;version="1.3",rice.environment,rice.environment.params,rice.e
 nvironment.time,rice.p2p.commonapi,rice.pastry,rice.pastry.leafset,ri
 ce.pastry.socket,rice.pastry.standard
Bundle-SymbolicName: de.hu_berlin.metrik.osgi.simulation.pastry

- -------------

Then is start my bundle, it seems that the deserialization of a message
fails because of a NoClassDefFoundError. The following error occures:


:[EMAIL PROTECTED]:20080604.114300.740:ERROR (SelectorManager.run):
 java.lang.NoClassDefFoundError: rice/p2p/commonapi/Message
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
        at 
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
        at java.net.URLClassLoader.access$000(URLClassLoader.java:56)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
        at
org.apache.felix.framework.searchpolicy.R4SearchPolicyCore.searchDynamicImports(R4SearchPolicyCore.java:597)
        at
org.apache.felix.framework.searchpolicy.R4SearchPolicyCore.findClassOrResource(R4SearchPolicyCore.java:475)
        at
org.apache.felix.framework.searchpolicy.R4SearchPolicyCore.findClass(R4SearchPolicyCore.java:186)
        at
org.apache.felix.framework.searchpolicy.R4SearchPolicy.findClass(R4SearchPolicy.java:45)
        at
org.apache.felix.framework.searchpolicy.ContentClassLoader.loadClass(ContentClassLoader.java:109)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:247)
        at java.io.ObjectInputStream.resolveClass(ObjectInputStream.java:604)
        at 
java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1575)
        at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1496)
        at
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1732)
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
        at
rice.pastry.messaging.JavaSerializedDeserializer.deserialize(JavaSerializedDeserializer.java:81)
        at
rice.pastry.commonapi.PastryEndpointMessage.<init>(PastryEndpointMessage.java:158)
        at
rice.pastry.commonapi.PastryEndpoint$PEDeserializer.deserialize(PastryEndpoint.java:77)
        at rice.pastry.routing.RouteMessage.unwrap(RouteMessage.java:529)
        at
rice.pastry.commonapi.PastryEndpoint.receiveMessage(PastryEndpoint.java:553)
        at
rice.pastry.standard.StandardRouter.deliverToApplication(StandardRouter.java:504)
        at
rice.pastry.standard.StandardRouter.receiveRouteMessage(StandardRouter.java:263)
        at rice.pastry.standard.StandardRouter.route(StandardRouter.java:163)
        at
rice.pastry.standard.StandardRouter.receiveMessage(StandardRouter.java:150)
        at
rice.pastry.messaging.MessageDispatch.dispatchMessage(MessageDispatch.java:146)
        at rice.pastry.PastryNode.receiveMessage(PastryNode.java:468)
        at rice.pastry.PastryNode.messageReceived(PastryNode.java:1076)
        at rice.pastry.PastryNode.messageReceived(PastryNode.java:92)
        at
org.mpisws.p2p.transport.commonapi.CommonAPITransportLayerImpl.messageReceived(CommonAPITransportLayerImpl.java:232)
        at
org.mpisws.p2p.transport.commonapi.CommonAPITransportLayerImpl.messageReceived(CommonAPITransportLayerImpl.java:65)
        at
org.mpisws.p2p.transport.identity.IdentityImpl$UpperIdentityImpl.messageReceived(IdentityImpl.java:1080)
        at
org.mpisws.p2p.transport.priority.PriorityTransportLayerImpl$EntityManager$BufferReader.done(PriorityTransportLayerImpl.java:1251)
        at
org.mpisws.p2p.transport.priority.PriorityTransportLayerImpl$EntityManager$BufferReader.receiveSelectResult(PriorityTransportLayerImpl.java:1215)
        at
org.mpisws.p2p.transport.util.SocketWrapperSocket.receiveSelectResult(SocketWrapperSocket.java:140)
        at
org.mpisws.p2p.transport.util.SocketWrapperSocket.receiveSelectResult(SocketWrapperSocket.java:140)
        at
org.mpisws.p2p.transport.liveness.LivenessTransportLayerImpl$LSocket.receiveSelectResult(LivenessTransportLayerImpl.java:1088)
        at
org.mpisws.p2p.transport.util.SocketWrapperSocket.receiveSelectResult(SocketWrapperSocket.java:140)
        at
org.mpisws.p2p.transport.util.SocketWrapperSocket.receiveSelectResult(SocketWrapperSocket.java:140)
        at
org.mpisws.p2p.transport.util.SocketWrapperSocket.receiveSelectResult(SocketWrapperSocket.java:140)
        at 
org.mpisws.p2p.transport.wire.SocketManager.read(SocketManager.java:322)
        at rice.selector.SelectorManager.doSelections(SelectorManager.java:394)
        at rice.selector.SelectorManager.run(SelectorManager.java:255)
Caused by: java.lang.ClassNotFoundException: rice.p2p.commonapi.Message
        at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
        ... 53 more
:rice.environment.exception.simple:20080604.114300.755:handleException(Thread[Selector
Thread -- Default,5,main]) java.lang.NoClassDefFoundError:
rice/p2p/commonapi/Message
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
        at 
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
        at java.net.URLClassLoader.access$000(URLClassLoader.java:56)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
        at
org.apache.felix.framework.searchpolicy.R4SearchPolicyCore.searchDynamicImports(R4SearchPolicyCore.java:597)
        at
org.apache.felix.framework.searchpolicy.R4SearchPolicyCore.findClassOrResource(R4SearchPolicyCore.java:475)
        at
org.apache.felix.framework.searchpolicy.R4SearchPolicyCore.findClass(R4SearchPolicyCore.java:186)
        at
org.apache.felix.framework.searchpolicy.R4SearchPolicy.findClass(R4SearchPolicy.java:45)
        at
org.apache.felix.framework.searchpolicy.ContentClassLoader.loadClass(ContentClassLoader.java:109)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:247)
        at java.io.ObjectInputStream.resolveClass(ObjectInputStream.java:604)
        at 
java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1575)
        at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1496)
        at
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1732)
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
        at
rice.pastry.messaging.JavaSerializedDeserializer.deserialize(JavaSerializedDeserializer.java:81)
        at
rice.pastry.commonapi.PastryEndpointMessage.<init>(PastryEndpointMessage.java:158)
        at
rice.pastry.commonapi.PastryEndpoint$PEDeserializer.deserialize(PastryEndpoint.java:77)
        at rice.pastry.routing.RouteMessage.unwrap(RouteMessage.java:529)
        at
rice.pastry.commonapi.PastryEndpoint.receiveMessage(PastryEndpoint.java:553)
        at
rice.pastry.standard.StandardRouter.deliverToApplication(StandardRouter.java:504)
        at
rice.pastry.standard.StandardRouter.receiveRouteMessage(StandardRouter.java:263)
        at rice.pastry.standard.StandardRouter.route(StandardRouter.java:163)
        at
rice.pastry.standard.StandardRouter.receiveMessage(StandardRouter.java:150)
        at
rice.pastry.messaging.MessageDispatch.dispatchMessage(MessageDispatch.java:146)
        at rice.pastry.PastryNode.receiveMessage(PastryNode.java:468)
        at rice.pastry.PastryNode.messageReceived(PastryNode.java:1076)
        at rice.pastry.PastryNode.messageReceived(PastryNode.java:92)
        at
org.mpisws.p2p.transport.commonapi.CommonAPITransportLayerImpl.messageReceived(CommonAPITransportLayerImpl.java:232)
        at
org.mpisws.p2p.transport.commonapi.CommonAPITransportLayerImpl.messageReceived(CommonAPITransportLayerImpl.java:65)
        at
org.mpisws.p2p.transport.identity.IdentityImpl$UpperIdentityImpl.messageReceived(IdentityImpl.java:1080)
        at
org.mpisws.p2p.transport.priority.PriorityTransportLayerImpl$EntityManager$BufferReader.done(PriorityTransportLayerImpl.java:1251)
        at
org.mpisws.p2p.transport.priority.PriorityTransportLayerImpl$EntityManager$BufferReader.receiveSelectResult(PriorityTransportLayerImpl.java:1215)
        at
org.mpisws.p2p.transport.util.SocketWrapperSocket.receiveSelectResult(SocketWrapperSocket.java:140)
        at
org.mpisws.p2p.transport.util.SocketWrapperSocket.receiveSelectResult(SocketWrapperSocket.java:140)
        at
org.mpisws.p2p.transport.liveness.LivenessTransportLayerImpl$LSocket.receiveSelectResult(LivenessTransportLayerImpl.java:1088)
        at
org.mpisws.p2p.transport.util.SocketWrapperSocket.receiveSelectResult(SocketWrapperSocket.java:140)
        at
org.mpisws.p2p.transport.util.SocketWrapperSocket.receiveSelectResult(SocketWrapperSocket.java:140)
        at
org.mpisws.p2p.transport.util.SocketWrapperSocket.receiveSelectResult(SocketWrapperSocket.java:140)
        at 
org.mpisws.p2p.transport.wire.SocketManager.read(SocketManager.java:322)
        at rice.selector.SelectorManager.doSelections(SelectorManager.java:394)
        at rice.selector.SelectorManager.run(SelectorManager.java:255)
Caused by: java.lang.ClassNotFoundException: rice.p2p.commonapi.Message
        at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
        ... 53 more

Can someone give me a hint to where to start to find the problem?


Kind regards,

Siamak
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.8 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAkhGaS0ACgkQBLvtewtTERMV3gCeIHdSxTbTd4D1rRs7bFNO7r/y
JawAoIUxzmPjFYWp3mdsYAd8tKklMKOq
=FoZD
-----END PGP SIGNATURE-----

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to