activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael <mtarullo...@optonline.net>
Subject RE: java.lang.NoClassDefFoundError: org/apache/commons/httpclient/HttpMethod
Date Sat, 21 May 2011 14:42:27 GMT
Where can I it?  Looked everywhere!

-----Original Message-----
From: Stan Lewis [mailto:slewis@fusesource.com] 
Sent: Saturday, May 21, 2011 8:25 AM
To: users@activemq.apache.org
Subject: Re: java.lang.NoClassDefFoundError: org/apache/commons/httpclient/HttpMethod

The HTTP transport classes are in the activemq-optional jar.

On Fri, May 20, 2011 at 11:09 PM, Michael <mtarullo463@optonline.net> wrote:
> I am trying to run a very simple ActiveMQ message producer client.  
> The source code is provided below.
>
>
>
> I am launching the app from Eclipse using the Run menu.  I have 
> configured a Run Configuration For the client app.  On the classpath 
> tab of the Run Configuration for the app I have included 
> activemq-all-5.5.0.jar,
> slf4j-simple-1.5.11 and httpclient-4.1.1.jar.
>
>
>
> When I run the app I get the following stack trace provided below.  
> Can anyone tell me what might be wrong?
>
>
>
> Thank you.
>
>
>
> Exception in thread "main" java.lang.NoClassDefFoundError:
> org/apache/commons/httpclient/HttpMethod
>
>      at
> org.apache.activemq.transport.http.HttpTransportFactory.createTranspor
> t(Http
> TransportFactory.java:75)
>
>      at
> org.apache.activemq.transport.TransportFactory.doConnect(TransportFact
> ory.ja
> va:141)
>
>      at
> org.apache.activemq.transport.TransportFactory.doConnect(TransportFact
> ory.ja
> va:51)
>
>      at
> org.apache.activemq.transport.TransportFactory.connect(TransportFactor
> y.java
> :80)
>
>      at
> org.apache.activemq.ActiveMQConnectionFactory.createTransport(ActiveMQ
> Connec
> tionFactory.java:243)
>
>      at
> org.apache.activemq.ActiveMQConnectionFactory.createActiveMQConnection
> (Activ
> eMQConnectionFactory.java:258)
>
>      at
> org.apache.activemq.ActiveMQConnectionFactory.createActiveMQConnection
> (Activ
> eMQConnectionFactory.java:230)
>
>      at
> org.apache.activemq.ActiveMQConnectionFactory.createConnection(ActiveM
> QConne
> ctionFactory.java:178)
>
>      at 
> JMSActiveMQPublisherApp.Execute(JMSActiveMQPublisherApp.java:39)
>
>      at JMSActiveMQPublisherApp.main(JMSActiveMQPublisherApp.java:28)
>
> Caused by: java.lang.ClassNotFoundException:
> org.apache.commons.httpclient.HttpMethod
>
>      at java.net.URLClassLoader$1.run(Unknown Source)
>
>      at java.security.AccessController.doPrivileged(Native Method)
>
>      at java.net.URLClassLoader.findClass(Unknown Source)
>
>      at java.lang.ClassLoader.loadClass(Unknown Source)
>
>      at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
>
>      at java.lang.ClassLoader.loadClass(Unknown Source)
>
>      ... 10 more
>
>
>
> import java.util.Vector;
>
>
>
> import javax.jms.Connection;
>
> import javax.jms.Session;
>
> import javax.jms.Destination;
>
> import javax.jms.DeliveryMode;
>
> import javax.jms.MessageProducer;
>
> import javax.jms.TextMessage;
>
>
>
> import org.apache.activemq.ActiveMQConnection;
>
> import org.apache.activemq.ActiveMQConnectionFactory;
>
>
>
> public class JMSActiveMQPublisherApp
>
> {
>
>    private String user         = ActiveMQConnection.DEFAULT_USER;
>
>    private String password     = ActiveMQConnection.DEFAULT_PASSWORD;
>
>    private String url          = "http://localhost:8161/";
>
>    private String subject      = "Subject.One";
>
>    private int    messageCount = 10;
>
>    private long   sleepTime    = 10000;
>
>
>
>
>
>    private Destination destination;
>
>
>
>    public static void main(String[] args)
>
>      {
>
>      JMSActiveMQPublisherApp app = new JMSActiveMQPublisherApp( );
>
>      app.Execute();
>
>      }
>
>
>
>    public void Execute( )
>
>    {
>
>        Connection connection = null;
>
>        try
>
>        {
>
>            // Create the connection.
>
>            ActiveMQConnectionFactory connectionFactory =
>
>                  new ActiveMQConnectionFactory(user, password, url);
>
>            connection = connectionFactory.createConnection();
>
>            connection.start();
>
>
>
>            // Create the session
>
>            // The argument false indicates that this session is not 
> transacted
>
>            Session session =
>
>                  connection.createSession(false, 
> Session.AUTO_ACKNOWLEDGE);
>
>
>
>            // Note that this method is not for creating the physical topic.
>
>            // The physical creation of topics is an administrative 
> task and
>
>            // is not to be initiated by the JMS API.
>
>            //
>
>            // So a publisher can not create new topics.  The topics 
> must
>
>            // be created manually.  The publisher can only send 
> messages to
>
>            // already existing topics.
>
>            //
>
>            // This appears to be a severely limited implementation of 
> the
>
>            // publish/subscribe model!!!
>
>            destination = session.createTopic(subject);
>
>
>
>            // Create the producer.
>
>            MessageProducer producer = 
> session.createProducer(destination);
>
>            producer.setDeliveryMode(DeliveryMode.PERSISTENT);
>
>
>
>            // Start sending messages
>
>            SendLoop(session, producer);
>
>
>
>
>
>        }
>
>        catch (Exception e)
>
>        {
>
>            System.out.println("Exception: " + e.getMessage());
>
>            e.printStackTrace();
>
>        }
>
>        finally
>
>        {
>
>            try
>
>            {
>
>                connection.close();
>
>            }
>
>            catch (Throwable ignore)
>
>            {
>
>            }
>
>        }
>
>    }
>
>
>
>    private void SendLoop(Session session, MessageProducer producer) 
> throws Exception
>
>    {
>
>
>
>        for (int i = 0; i < messageCount || messageCount == 0; i++) {
>
>
>
>            TextMessage message = session.createTextMessage("This is 
> message " + messageCount + " for topic Subject.One!" );
>
>
>
>            producer.send(message);
>
>
>
>            System.out.println("Message " + messageCount + " sent to 
> topic Subject.One");
>
>
>
>            Thread.sleep(sleepTime);
>
>        }
>
>    }
>
> }
>
>
>
>


Mime
View raw message