Ich habe ein sehr einfaches Paket mit Scala für den Einsatz in Camel und Karaf erstellt. Wenn ich mein Bundle in Apache ServiceMix 7.0.0/Karaf installiere, wird das Bundle aufgelöst, aber nicht gestartet. Wenn ich die Protokolle prüfe, bekomme ich die Nachricht: Keine Komponente gefunden mit Schema: AnlegestegApache ServiceMix 7, ScalaDSL, Keine Komponente gefunden mit Schema: Jetty
Eine gründliche Suche nach diesem Problem ergibt nur Antworten, die darauf hinweisen, dass camel-jetty in der pom.xml enthalten ist.
Ich habe dies getan, aber leider ist es immer noch nicht funktioniert ..
meine Pom Abhängigkeiten sind (unter anderem):
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-jetty-common</artifactId>
<version>2.16.3</version>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-jetty9</artifactId>
<version>2.16.3</version>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-jetty</artifactId>
<version>2.16.3</version>
</dependency>
Der Code in Scala ist sehr einfach:
und schließlich ist die Liste der in der Karaf-Webkonsole angezeigten Komponenten wie folgt:
Imported Packages com.fasterxml.jackson.databind,version=2.8.2 from com.fasterxml.jackson.core.jackson-databind (268)
com.fasterxml.jackson.module.scala,version=2.8.2 from com.fasterxml.jackson.module.jackson.module.scala (246)
org.apache.camel,version=2.16.3 from org.apache.camel.camel-core (43)
org.apache.camel.builder,version=2.16.3 from org.apache.camel.camel-core (43)
org.apache.camel.component.jetty,version=2.16.3 from org.apache.camel.camel-jetty-common (270)
org.apache.camel.component.jetty9,version=2.16.3 from org.apache.camel.camel-jetty9 (271)
org.apache.camel.main,version=2.16.3 from org.apache.camel.camel-core (43)
org.apache.camel.scala.dsl,version=2.16.3 from org.apache.camel.camel-scala (220)
org.apache.camel.scala.dsl.builder,version=2.16.3 from org.apache.camel.camel-scala (220)
org.apache.camel.spi,version=2.16.3 from org.apache.camel.camel-core (43)
org.apache.camel.support,version=2.16.3 from org.apache.camel.camel-core (43)
org.osgi.framework,version=1.8.0 from org.apache.felix.framework (0)
scala,version=2.11.7.v20150622-112736-1fbce4612c from org.scala-lang.scala-library (213)
scala.collection,version=2.11.7.v20150622-112736-1fbce4612c from org.scala-lang.scala-library (213)
scala.collection.mutable,version=2.11.7.v20150622-112736-1fbce4612c from org.scala-lang.scala-library (213)
scala.reflect,version=2.11.7.v20150622-112736-1fbce4612c from org.scala-lang.scala-library (213)
scala.runtime,version=2.11.7.v20150622-112736-1fbce4612c from org.scala-lang.scala-library (213)
Manifest Headers Bnd-LastModified: 1474031034895
Build-Jdk: 1.8.0_91
Built-By: sander
Bundle-Activator: com.focuscura.servicemix.spielerei.MyRouteMain
Bundle-ManifestVersion: 2
Bundle-Name: MyFirstDSL
Bundle-SymbolicName: com.focuscura.servicemix.spielerei.my-first-dsl
Bundle-Version: 1.0.0.SNAPSHOT
Created-By: Apache Maven Bundle Plugin
Export-Package: com.focuscura.servicemix.spielerei; uses:="com.fasterxml.jackson.databind, org.apache.camel, org.apache.camel.builder, org.apache.camel.component.jetty, org.apache.camel.component.jetty9, org.apache.camel.scala.dsl.builder, org.apache.camel.support, org.osgi.framework, scala, scala.collection, scala.reflect, scala.runtime"; version="1.0.0"
Import-Package: com.fasterxml.jackson.databind; version="[2.8, 3)", com.fasterxml.jackson.module.scala; version="[2.8, 3)", org.apache.camel; version="[2.16, 3)", org.apache.camel.builder; version="[2.16, 3)", org.apache.camel.component.jetty; version="[2.16, 3)", org.apache.camel.component.jetty9; version="[2.16, 3)", org.apache.camel.main; version="[2.16, 3)", org.apache.camel.scala.dsl; version="[2.16, 3)", org.apache.camel.scala.dsl.builder; version="[2.16, 3)", org.apache.camel.spi; version="[2.16, 3)", org.apache.camel.support; version="[2.16, 3)", org.osgi.framework; version="[1.8, 2)", scala; version="[2.11, 3)", scala.collection; version="[2.11, 3)", scala.collection.mutable; version="[2.11, 3)", scala.reflect; version="[2.11, 3)", scala.runtime; version="[2.11, 3)"
Manifest-Version: 1.0
Require-Capability: osgi.ee; filter:="(&(osgi.ee=JavaSE)(version=1.6))"
Tool: Bnd-3.0.0.201509101326
Ich habe das Feature camel-jetty9 installiert und als Test habe ich eine Blueprint-Route in XML erstellt, die auch eine Anlegesteg-Route verwendet und das funktioniert gut.
Irgendwelche Hilfe, warum ServiceMix/Karaf/Camel darauf beharrt, dass es jetty nicht finden kann: html :?
Vielen Dank!
Am Ende habe ich nicht in der Lage war, um das zu beheben. Auch auf ServiceMix 6.1 konnte die Jetty-Komponente nicht gefunden werden. Am Ende habe ich die ScalaDSL komplett aufgegeben und meine Route mit Blueprint definiert. Das funktioniert gut in ServiceMix 7.0 (benötigt, um Jetty 9 zu referenzieren, da Jetty8 zu einer NullPointerException führte. –