2017-04-04 1 views
0

Wie mit Krieg kommunizieren, um mit Direct-VM zu bündeln? Ich habe eine Kriegsdatei erstellt, in der ich Kamelrouten mit dem einzigartigen camelContext definiert habe. Von diesem Krieg habe ich versucht, mich mit dem anderen Bündel B zu verbinden, das ein reines OSGI-Bündel mit einzigartigem Kamelkontext ist.Cross-Kommunikation zwischen Krieg und OSGI Bundle in Kamel + Sicherung

Als ich versuchte Direct-vm: route-abc aus dem Krieg, gibt es mir Fehler, dass es Verbraucher mit Direct-vm: route-abc gibt.

Überraschenderweise kann ich den KamelKontext des Krieges nicht sehen, wenn ich Kamel: Context-Liste auf Karaf-Konsole. Es listet nur den Kontext des OSGI-Bundles auf.

Kann hier jemand helfen?

Vielen Dank im Voraus.

Ashish

Antwort

0

Wenn Sie eine einfache Krieg-Datei verwenden, dann in OSGi Kamel nicht davon ausgehen, es läuft. Daher wird der Kamelkontext nicht als Dienst angekündigt.

Sie können stattdessen ein einfaches Paket mit Blueprint und der Camel-Servlet-Komponente verwenden, um Kamelrouten im Internet verfügbar zu machen.

+0

Eigentlich ist meine Anforderung nur so. Ich kann den Krieg nicht auf OSGi aktualisieren. Bedeutet es, dass wenn ich Krieg mit osgi: install Krieg: mvn: ~~ es wird nicht mein camelContext als Dienst registrieren? Wenn das der Fall ist, als wie diese Interkommunikation zwischen Krieg und anderen OSGi Bündel passiert. –

+0

Ein Krieg ist nicht wirklich ein OSGi-Artefakt. So wird es eigenständig im Container bereitgestellt. Ich denke nicht, dass Sie OSGi-Mechaniken nutzen können, um mit einem einfachen Krieg zu kommunizieren. –

Verwandte Themen