2011-07-11 17 views
0

私はUbuntuでActiveMQ 5.5.0ブローカーを実行し、APR 1.4.5とC API関連のlibactivmqとlibopenwireをダウンロードしてコンパイルしました。で、実施例に提供さActiveMQ OpenWire C APIの問題

テストC: http://svn.apache.org/repos/asf/activemq/sandbox/openwire-c/src/examples/

は動作しません 、問題がログからデバッグ行を参照してください、です。WireFormat魔法のコードである:

2011-07-07 15時35 :30,324 | DEBUG |送信:WireFormatInfo {バージョン= 7、プロパティ= {CacheSize = 1024、CacheEnabled = true、SizePrefixDisabled = false、MaxInactivityDurationInitalDelay = 10000、TcpNoDelayEnabled = true、MaxInactivityDuration = 30000、TightEncodingEnabled = true、StackTraceEnabled = true}、magic = [A、c 、t、i、v、e、M、Q]} | org.apache.activemq.transport.WireFormatNegotiator | ActiveMQ Task-2 2011-07-07 15:35:30,327 | DEBUG |ローカルのmin:WireFormatInfo {バージョン= 7、プロパティ= {CacheSize = 1024、CacheEnabled = true、SizePrefixDisabled = false、MaxInactivityDurationInitalDelay = 10000、TcpNoDelayEnabled = true、MaxInactivityDuration = 30000、TightEncodingEnabled = true、StackTraceEnabled = true}、magic = [ {A、c、t、i、v、e、M、Q}}とリモート:WireFormatInfo {version = 1297154048、properties = {}、magic = e]} | org.apache.activemq.transport.InactivityMonitor | ActiveMQ Transport:tcp:///127.0.0.1:51606 2011-07-07 15:35:30,327 | DEBUG | WireFormatInfo {バージョン= 1297154048、プロパティ= {}、マジック= [^ A、^ @、A、c、t、i、v、e]} | org.apache.activemq.transport.WireFormatNegotiator | ActiveMQトランスポート:tcp:///127.0.0.1:51606 2011-07-07 15:35:30,333 | DEBUG |ネゴシエーション前にtcp:///127.0.0.1:51606:OpenWireFormat {version = 7、cacheEnabled = false、stackTraceEnabled = false、tightEncodingEnabled = false、sizePrefixDisabled = false} org.apache.activemq.transport.WireFormatNegotiator | ActiveMQトランスポート:tcp:///127.0.0.1:51606 2011-07-07 15:35:30,337 | DEBUG |トランスポートに失敗しました:java.io.IOException:リモートワイヤフォーマットの魔法が無効です。 org.apache.activemq.broker.TransportConnection.Transport | ActiveMQのトランスポート:TCP:///127.0.0.1:51606

私は、クライアント側のデバッグおよびブローカーに送信されたキャプチャ値、15バイト、私は以下にそれらを一覧表示されます: 1: '\ 001' 2: " \ 001' 3 '\ 000' 4: 'A' 5: 'C' 6: 'T' 7: '私は' 8 'V' 9: 'E' 10」 M」 11 'Q' 12 '\ 000' 13 '\ 000' 14 '\ 000' 15 'ここで\ 002' 最後の4つのバイトは、2

に設定されているバージョンであります

何とかこのメッセージはブローカーによってシフト/誤解されているので、魔法のトークンとバージョンが間違っています。

もう1つの情報:付属のバージョンow_commands_v1。[ch]とow_commands_v2。[ch]の両方を使用してlibopenwireをコンパイルしたので、両方のテストをリンクしようとしました。誰かが2つのバージョンの理由を知っていますか?どちらを使うべきですか?

注:このメッセージは数日前にApacheのフォーラムで投稿されましたが、返信はありません。私はこのサイトのメッセージがより多くのトラフィックを得ることを願っています。

答えて

1

OpenWire C APIは誰にも維持されていないので、壊れていることは驚くことではありません。 ActiveMQ svn repoにActiveMQ-CPP用のCラッパーがあります。実際にCと結婚している場合は、代わりに使用できます。