2012-09-28 45 views
1

我正在使用Hornetq 2.2.5版本的REST接口,作爲JBoss-4.2.1 GA應用服務器的JMS提供者運行。我已經成功部署了一個.war,它具有HornetQ REST消息傳遞界面。我可以使用應用程序的資源正確發送消息。現在,我試圖把消息發送到遠程REST資源,所以我發了HEAD請求,得到了MSG-推消費者報頭和發送以下POST請求:通過HornetQ的REST接口推送消息

<push-registration> 
    <link href="http://remotehost:8081/TestREST/webresources/test" method="PUT" /> 
</push-registration> 

我回顧了JBoss日誌和讀:

18:04:20953 INFO [PushConsumer]推消費者開始爲: XmlLink {的className = '空',相對= '空', HREF =「HTTP://遠程主機:8081/TestREST/webresources/test',type ='null', method ='PUT'}

但是,當我嘗試發送一個JMS測試消息隊列中,我得到了以下異常:

18:07:08,234 ERROR [ClientConsumerImpl]無法調用的onMessage() java.lang.IndexOutOfBoundsException 在org.jboss.netty.buffer.AbstractChannelBuffer.checkReadableBytes(AbstractChannelBuffer.java:657) 在org.jboss.netty.buffer.AbstractChannelBuffer.readBytes(AbstractChannelBuffer.java:337) 在org.jboss.netty.buffer。 AbstractChannelBuffer.readBytes(AbstractChannelBuffer.java:343) at org.hornetq.core.buffers.impl.ChannelBufferWrapper.readBytes(ChannelBufferWrapper.java:347) a t org.hornetq.rest.util.HttpMessageHelper.buildMessage(HttpMessageHelper.java:97) at org.hornetq.rest.queue.push.UriStrategy.push(UriStrategy.java:82) at org.hornetq.rest.queue .push.PushConsumer.onMessage(PushConsumer.java:114) at org.hornetq.core.client.impl.ClientConsumerImpl.callOnMessage(ClientConsumerImpl.java:866) at org.hornetq.core.client.impl.ClientConsumerImpl.access $ org.hornetq.utils.OrderedExecutorFactory $ OrderedExecutor $ 1.run(OrderedExecutorFactory.java)$ Org.hornetq.core.client.impl.ClientConsumerImpl $ Runner.run(ClientConsumerImpl.java:983) $ 100(ClientConsumerImpl.java:44) :100) at java.util.concurrent.ThreadPoolE(java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolE xecutor $ Worker.run(ThreadPoolExecutor.java:603) 在java.lang.Thread.run(Thread.java:722)

你有任何想法來解決這個問題?

回答

1

您可以先試用最新版本嗎?有幾個變化。我會推薦2.2.14

然後我們可以查看一個可能的錯誤。我們需要一個複製器來解決您的問題。