3 Replies Latest reply on Apr 24, 2011 3:03 AM by davsclaus

    NoClassDefFoundError HierarchicalStreamDriver when using STOMP

    braiam

      Hello.

       

      Well, even with my long experience working with ESBs (an experience that spans for the last four hours working with Fuse ESB ) I am not able to establish a communication between Fuse ESB and the PHP STOMP client (http://stomp.fusesource.org/)

       

      Fuse ESB starts correctly, and I'm able to use the web console. I've tried some xml examples of publishing to the ActiveMQ and everything works perfectly. But now I'm trying to publish a message using the PHP Stomp client

       

       

      $con = new Stomp("tcp://localhost:61613");

      $con->connect();

      $con->send("/queue/test", "test");

      $con->disconnect();

       

       

       

      The request times out and prints this in the browser

       

       

       



      Fatal error

      : Uncaught exception 'StompException' with message 'Connection not acknowledged' in D:\Public\www\wwwroot\originacion\application\third_party\stomp\Stomp.php:213
      Stack trace:
      #0 D:\Public\www\wwwroot\originacion\application\controllers\clientes.php(58): Stomp->connect()
      #1 internal function: Clientes->doNew()

      #2 D:\Public\www\wwwroot\originacion\system\core\CodeIgniter.php(339): call_user_func_array(Array, Array)

      #3 D:\Public\www\wwwroot\originacion\index.php(201): require_once('D:\Public\www\w...')

      #4

      thrown in

      D:\Public\www\wwwroot\originacion\application\third_party\stomp\Stomp.php

      on line

      213







      and this gets logged into the karaf console



      karaf@root> Exception in thread "ActiveMQ Transport Server Thread Handler: stomp://localhost:61613" java.lang.NoClassDefFoundError

      : com/thoughtworks/xstream/io/HierarchicalStreamDriver

      at org.apache.activemq.transport.stomp.StompTransportFactory.compositeConfigure(StompTransportFactory.java:44)

      at org.apache.activemq.transport.TransportFactory.serverConfigure(TransportFactory.java:270)

      at org.apache.activemq.transport.tcp.TcpTransportServer.handleSocket(TcpTransportServer.java:421)

      at org.apache.activemq.transport.tcp.TcpTransportServer$1.run(TcpTransportServer.java:354)

      at java.lang.Thread.run(Thread.java:662)

      Caused by: java.lang.ClassNotFoundException: com.thoughtworks.xstream.io.HierarchicalStreamDriver

      at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:506)

      at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422)

      at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)

      at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)

      at java.lang.ClassLoader.loadClass(ClassLoader.java:248)

      ... 5 more

       

      What action should I perform to let Fuse ESB know where HierarchicalStreamDriver is? Should I install any feature? Should I run any maven command?

       

      Thank you!

       

      Regards

       

      Braiam