activemq-artemis/examples/jms/proton-j
Clebert Suconic 3c44e26854 ACTIVEMQ6-3 renaming directories from activemq6 to activemq
https://issues.apache.org/jira/browse/ACTIVEMQ6-3

We are renaming packages from activemq6 to activemq as that's more generic and version independent
On this first commit I'm just renaming the directories otherwise the history would be lost. The next commit will rename the text on the directories.
If I squash these two commits git will make us delete / add again.
2014-11-17 09:33:36 -05:00
..
src/main ACTIVEMQ6-3 renaming directories from activemq6 to activemq 2014-11-17 09:33:36 -05:00
pom.xml Use new package names in config and classes 2014-11-11 18:28:18 +00:00
readme.html Use new package names in config and classes 2014-11-11 18:28:18 +00:00

readme.html

<html>
<head>
    <title>HornetQ QPID java example</title>
    <link rel="stylesheet" type="text/css" href="../common/common.css" />
    <link rel="stylesheet" type="text/css" href="../common/prettify.css" />
    <script type="text/javascript" src="../common/prettify.js"></script>
</head>
<body onload="prettyPrint()">
<h1>Proton qpid java example</h1>

<<p>HornetQ is a multi protocol broker. It will inspect the initial handshake of clients to determine what protocol to use.</p>
<p>All you need to do is to connect a client into hornetq's configured port and you should be able connect.</p>
<p>To run this example simply run the command <literal>mvn verify</literal>, execute the compile.sh script and start the executable called ./hello</p>

<p>You don't need to do anything special to configure the HornetQ server to accept AMQP clients. </p>
<p>Just for the sake of documentation though we are setting the port of HornetQ on this example as 5672 which is the port qpid have by default. </p>
<p>This is totally optional and you don't need to follow this convention. You can use any port you chose including HornetQ's 5445 default port</p>
     <pre class="prettyprint">
     <code>
         &lt;acceptor name="proton-acceptor"&gt;
         &lt;factory-class&gt;org.apache.activemq6.core.remoting.impl.netty.NettyAcceptorFactory&lt;/factory-class&gt;
         &lt;param key="port" value="5672"/&gt;
         &lt;/acceptor&gt;
     </code>
     </pre>
<h2>Example step-by-step</h2>
<ol>
    <li> Create an amqp qpid 1.0 connection.</li>
        <pre class="prettyprint">
           <code>connection= new Connection("localhost", 5672, null, null);</code>
        </pre>

    <li>Create a session</li>
        <pre class="prettyprint">
           <code>Session session = connection.createSession();</code>
        </pre>

    <li>Create a sender</li>
        <pre class="prettyprint">
           <code>Sender sender = session.createSender("testQueue");</code>
        </pre>

    <li>send a simple message</li>
        <pre class="prettyprint">
           <code>sender.send(new Message("I am an amqp message"));</code>
        </pre>

    <li>create a moving receiver, this means the message will be removed from the queue</li>
        <pre class="prettyprint">
           <code>Receiver rec = session.createMovingReceiver("testQueue");</code>
        </pre>

    <li>set some credit so we can receive</li>
        <pre class="prettyprint">
          <code>rec.setCredit(UnsignedInteger.valueOf(1), false);</code>
        </pre>

    <li>receive the simple message</li>
        <pre class="prettyprint">
          <code>Message m = rec.receive(5000);
                System.out.println("message = " + m.getPayload());</code>
        </pre>

    <li>acknowledge the message</li>
        <pre class="prettyprint">
          <code>rec.acknowledge(m);</code>
        </pre>

    <li>close the connection</li>
        <pre class="prettyprint">
          <code>connection.close();</code>
        </pre>
</ol>

</body>
</html>