2010-12-23 14 views
2

Ich habe ein Problem, dauerhafte Verbraucher und Hersteller mit ActiveMQ-CPP und Stomp-Protokoll zu erstellen. Ich versuche, mit Stomp eine Verbindung zu HornetQ herzustellen und Nachrichten im nicht dauerhaften Status zu senden und zu empfangen. Ich habe versucht, den Producer auf "Durable" zu setzen, indem ich seinen Lieferungsmodus auf "persistent" und "CMSDeliveryMode" von Nachrichten setze und einen DurableConsumer anstelle eines normalen Konsumenten erstelle. Aber als ich die JBoss JMX-Console anschaute, wurden beide als nicht dauerhaft betrachtet (Nachrichten werden als nicht dauerhaft eingestuft, und Verbraucher werden auch als nicht dauerhaft abonniert).Haltbarkeitsproblem mit ActiveMQ-cpp und stampfen

Ich habe sogar den Integrationstest StompDurableTest ausprobiert und nur 10 von 20 Nachrichten erhalten (die, die gesendet wurden, wenn der Verbraucher aktiv ist). So ist der Test fehlgeschlagen.

Da der Integrationstest nicht funktioniert hat, vermute ich, dass es eher mit ActiveMQ-cpp oder Stomp-Konfigurationen als mit dem Code zu tun hat. Fehle ich etwas, um Haltbarkeit zu ermöglichen?

Vielen Dank im Voraus,

Sami

Antwort

1

Nicht sicher, wie HornetMQ funktioniert, aber ich habe das andere mit den Zielnamen hatte Probleme gesehen, weil Hornisse nicht das/Thema nicht gefällt und/Warteschlange Präfix dass CMS angehängt wird, um mit ActiveMQ zu arbeiten.

Eine andere Sache zu beachten ist, dass mit Stomp Ihre clientId und Abonnement-ID übereinstimmen müssen, und jedes Mal, wenn Sie eine Verbindung herstellen.

Grüße Tim

www.fusesource.com

+0

Dank Tim für die Antwort. Ich habe bereits/queue/und/topic/in jms.queue geändert. & jms.topic. von ActiveMQ source, und SubscriptionName auf Client-ID im Streslichkeitsmodus setzen, aber ohne Glück. Ich kann erfolgreich empfangen, wenn der Verbraucher aktiv ist, das Problem ist, wenn es abonniert und nicht aktiv ist. – Sami