2017-10-16 1 views
0

Folgende Dinge möchte ich wissen, um Kamel-Projekte in Sicherung Fabric-Umgebung zu implementieren. Ich habe Bündel Gläser erstellt. Diese Bündelgläser funktionieren gut in einer Nicht-Fabric-Umgebung. i-e wenn ich diese jars verschiebe, um Verzeichnis auf jboss-fuse zu deployen funktioniert es perfekt. Wenn die gleichen Gläser in untergeordnete Container verschoben werden, funktioniert es nicht. Dinge, die ich Setup für Gewebeumgebung haben, ist wie folgt:Bereitstellen von Kamel-Projekt in Sicherung Fabric

Erstellt Stoff Behälter:

fabric:create --new-user fadmin --new-user-password maskerkey --generate-zookeeper-password --resolver localip 

Kinder Behälter:

fabric:container-create-child root node 2 

Wie ich gleiche Bündel Gläser auf das Kind bereitstellen sollte Behälter? Die folgende Ausnahme i zu sehen bin, wenn ich Bündel Gläser bereitstellen:

org.osgi.framework.BundleException: Unresolved constraint in bundle BUNDLE_NAME [139]: Unable to resolve 139.0: missing requirement [139.0] osgi.wiring.package; (osgi.wiring.package=org.apache.activemq.camel.component) 

Antwort

3

Wenn Sie Stoff Umwelt haben, sollten Sie nie deploy/ Verzeichnis verwenden. Es ist eher für Prototyping-Zwecke.

Wenn Sie untergeordnete Container erstellt haben:

fabric:container-create-child root node 2 

Sie haben nun zwei Container genannt node1 und node2

Ein Bündel in OSGi ist nur ein verbesserte JAR.

A (Karaf) Merkmal ist eine Sammlung von Bündel (und möglicherweise Konfigurationen), so dass Sie leichter mehrere Bundles installieren können.

A (Stoff) Profil ist eine Erklärung von Bündeln, Merkmale, Konfigurationen und Ressourcen (grob), so können Sie mehrere (karaf) installieren Funktionen einfach mehr.

Ihre Fehlermeldung bedeutet, dass kein Bundle bereits installiert ist, das eine Anforderung von Ihr Bundle erfüllen könnte. Genauer gesagt fehlt Ihnen ein Paket, das das org.apache.activemq.camel.component Paket exportiert.

Wenn Sie Profile und Funktionen mit Sicherung verfügbar suchen, werden Sie sehen:

JBossFuse:[email protected]> features:info activemq-camel 
Description of activemq-camel 5.11.0.redhat-vvv feature 
---------------------------------------------------------------- 
Feature has no configuration 
Feature has no configuration files 
Feature depends on: 
    activemq-client 5.11.0.redhat-vvv 
    camel-spring [2.17,3) 
    camel-jms [2.17,3) 
    camel [2.17,3) 
Feature contains followed bundles: 
mvn:org.apache.activemq/activemq-camel/5.11.0.redhat-vvv start-level=50 
Feature has no conditionals. 

(wo vvv ist Build von Sicherung gegeben).

Jetzt müssen Sie Ihre Profil erstellen:

profile-create myprofile 

hinzufügen activemq-camel Funktion es:

profile-edit --feature activemq-camel myprofile 

Fügen Sie Ihr Paket hinzu:

profile-edit --bundle mvn:your-groupId/your-artifactId/your-version 

Und diese zuweisen Profil zu einem Container (Container)

container-add-profile node1 myprofile 
Verwandte Themen