<div dir="ltr"><div>Hi,</div>
<div>&nbsp;</div>
<div>I think I am close to getting my Flex code to subscribe to RabbitMQ, but I am a bit stuck on just one thing.&nbsp; </div>
<div>&nbsp;</div>
<div>When connecting using AMPQ Flex lib, I am getting:</div>
<div>&nbsp;</div>
<div>Calling handleForcedShutdown from connection<br>forceClose called</div>
<div>&nbsp;</div>
<div>Is there any way I can turn on some kind of logging to see all the messages going in and out of RabbitMQ to debug this problem?&nbsp; </div>
<div>&nbsp;</div>
<div>Could someone please kindly help me out?</div>
<div>&nbsp;</div>
<div>Here is my simple Flex code for getting the published messages from the Java client:</div>
<div>&nbsp;</div>
<div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; public class Subscriber implements BasicConsumer {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; protected var x:String = &quot;&quot;;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; &nbsp;protected var q:String = &quot;&quot;;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;protected var x_type:String = &quot;topic&quot;;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;protected var bind_key:String = &quot;*&quot;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;protected var routing_key:String = &quot;SimpleQueue&quot;</div>
<div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;protected var connection:Connection;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;protected var baseSession:Session;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;protected var sessionManager:SessionManager;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;protected var sessionHandler:SessionStateHandler;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;public function Subscriber() {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;init();<br>&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;private function init () : void<br>&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;trace(&quot;init()&quot;);<br>&nbsp;&nbsp;&nbsp;&nbsp;var state:ConnectionState = new ConnectionState();<br>
&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; state.username = &quot;guest&quot;;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;state.password = &quot;gutes&quot;;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;state.vhostpath = &quot;/&quot;;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;state.serverhost = &quot;<a href="http://192.168.1.104">192.168.1.104</a>&quot;;&nbsp;&nbsp;&nbsp; </div>

<div>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;var connection:Connection = new Connection(state);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;var baseSession:Session = connection.baseSession;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;var sessionManager:SessionManager = connection.sessionManager;<br>&nbsp;&nbsp;&nbsp;&nbsp;connection.start();<br>
&nbsp;&nbsp;&nbsp;&nbsp;baseSession.addEventListener(new OpenOk(), onOpenOk);<br>&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;public function onOpenOk(event:ProtocolEvent):void {<br>&nbsp;&nbsp;&nbsp;&nbsp;trace(&quot;OpenOK&quot;);<br>&nbsp;&nbsp;&nbsp;&nbsp;sessionHandler = sessionManager.create();</div>

<div>&nbsp;&nbsp;&nbsp;&nbsp;var open:Open = new Open();</div>
<div>&nbsp;&nbsp;&nbsp;&nbsp;var accessRequest:Request = new Request();<br>&nbsp;&nbsp;&nbsp;&nbsp;accessRequest.realm = &quot;/data&quot;;<br>&nbsp;&nbsp;&nbsp;&nbsp;accessRequest.passive = true;<br>&nbsp;&nbsp;&nbsp;&nbsp;accessRequest.active = true;<br>&nbsp;&nbsp;&nbsp;&nbsp;accessRequest.read = true;<br>&nbsp;&nbsp;&nbsp;&nbsp;accessRequest.write = true;</div>

<div>&nbsp;&nbsp;&nbsp;&nbsp;var exchange:org.amqp.methods.exchange.Declare <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= new org.amqp.methods.exchange.Declare();<br>&nbsp;&nbsp;&nbsp;&nbsp;exchange.exchange = x;<br>&nbsp;&nbsp;&nbsp;&nbsp;exchange.type =x_type;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;</div>
<div>&nbsp;&nbsp;&nbsp;&nbsp;var queue:org.amqp.methods.queue.Declare <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= new org.amqp.methods.queue.Declare();<br>&nbsp;&nbsp;&nbsp;&nbsp;queue.queue = q;</div>
<div>&nbsp;&nbsp;&nbsp;&nbsp;var bind:Bind = new Bind();<br>&nbsp;&nbsp;&nbsp;&nbsp;bind.exchange = x;<br>&nbsp;&nbsp;&nbsp;&nbsp;bind.queue = q;<br>&nbsp;&nbsp;&nbsp;&nbsp;bind.routingkey = bind_key;</div>
<div><br>&nbsp;&nbsp;&nbsp;sessionHandler.dispatch(new Command(open));&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;<br>&nbsp;&nbsp;&nbsp;sessionHandler.dispatch(new Command(accessRequest));<br>&nbsp;&nbsp;&nbsp;sessionHandler.dispatch(new Command(exchange));<br>&nbsp;&nbsp;&nbsp;sessionHandler.dispatch(new Command(queue));&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;<br>
&nbsp;&nbsp;&nbsp;sessionHandler.dispatch(new Command(bind));<br>&nbsp;&nbsp;&nbsp;sessionHandler.addEventListener(new BindOk(), onBindOk);<br>&nbsp;&nbsp;&nbsp;</div>
<div>&nbsp;&nbsp;}<br>&nbsp;&nbsp;public function onBindOk(event:ProtocolEvent):void{<br>&nbsp;&nbsp;&nbsp;&nbsp;trace(&quot;onBindOk called&quot;);<br>&nbsp;&nbsp;&nbsp;&nbsp; var consume:Consume = new Consume();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; consume.queue = q;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;consume.noack = true;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;sessionHandler.register(consume, this);<br>&nbsp;&nbsp;&nbsp;};<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;public function onConsumeOk(tag:String):void {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //consumerTag = tag;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; trace(&quot;onConsumeOk&quot;);<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; public function onCancelOk(tag:String):void {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; trace(&quot;onCancelOk&quot;);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</div>
<div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; public function onDeliver(method:Deliver,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; properties:BasicProperties,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; body:ByteArray):void {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; trace(&quot;onDeliver --&gt; &quot; + body.readUTF());<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</div>
<div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </div>
<div>&nbsp;</div>
<div>Thank you very much for all your kind help.</div>
<div>&nbsp;</div>
<div>Anne</div>
<div>&nbsp;</div>
<div>&nbsp;</div></div>