4 Replies Latest reply on Jun 27, 2007 7:12 AM by thomasra

    1.3.0 messaging client

    aslak

      There seem to be a dependency issue with the jboss messaging client lib in 1.3.0.

      Running a JMS client with the following dependencies:

      /opt/jboss-4.2.0.GA/client/javassist.jar
      /opt/jboss-4.2.0.GA/client/jbossall-client.jar
      /opt/jboss-4.2.0.GA/client/log4j.jar
      /opt/jboss-4.2.0.GA/client/trove.jar
      /opt/jboss-4.2.0.GA/client/jboss-messaging-client.jar


      results in:

      Exception in thread "main" java.lang.NoClassDefFoundError: org/jboss/aop/pointcut/PointcutStats
      at org.jboss.jms.client.delegate.ClientConnectionFactoryDelegate.(ClientConnectionFactoryDelegate.java)
      at sun.misc.Unsafe.ensureClassInitialized(Native Method)
      at sun.reflect.UnsafeFieldAccessorFactory.newFieldAccessor(UnsafeFieldAccessorFactory.java:25)
      at sun.reflect.ReflectionFactory.newFieldAccessor(ReflectionFactory.java:122)
      at java.lang.reflect.Field.acquireFieldAccessor(Field.java:918)
      at java.lang.reflect.Field.getFieldAccessor(Field.java:899)
      at java.lang.reflect.Field.getLong(Field.java:528)
      at java.io.ObjectStreamClass.getDeclaredSUID(ObjectStreamClass.java:1614)
      at java.io.ObjectStreamClass.access$700(ObjectStreamClass.java:52)
      at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:425)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.io.ObjectStreamClass.(ObjectStreamClass.java:413)
      at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java:310)
      at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:547)
      at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1583)
      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.defaultReadFields(ObjectInputStream.java:1945)
      at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1869)
      at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
      at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
      at java.rmi.MarshalledObject.get(MarshalledObject.java:142)
      at org.jnp.interfaces.MarshalledValuePair.get(MarshalledValuePair.java:72)
      at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:652)
      at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:587)
      at javax.naming.InitialContext.lookup(InitialContext.java:392)


      Adding this to the classpath and it all works:
      /opt/jboss-4.2.0.GA/server/messaging/deploy/jboss-aop-jdk50.deployer/jboss-aop-jdk50.jar


      The client lib shouldn't have to depend directly on a server deployed lib..

      -aslak-