These days have been learning and deepening some of OSGi's things, and went to see the next Apache Felix several example, so decided to write some of Felix example, but not in the Felix official website to run, Instead of learning from a new OSGi operating environment, the KARAF is used as a running container for OSGi while integrating camel in, since there will be more use of OSGi in the future, so this is all integrated in.
This article describes several frameworks and containers first.
Karaf
Karaf is an open source project under Apache in 2001. Karaf is also an OSGi-based operating environment, KARAF provides a lightweight OSGi container.
In this selection Karaf as OSGi container, many of the uses in the later use will be explained, but Karaf of the various commands, into the use of the purpose is no longer explained alone, in this project, Karaf will appear as components, in the MAVEN project, will appear as plug-ins.
Camel
Apache Camel is an open source project under the Apache Foundation, which is a rule-based Routing and mediation engine that provides the implementation of a Java object in Enterprise integration mode that configures routing and mediation rules through an application interface (or a declarative Java domain-specific language (DSL)). Domain-specific language means that Apache camel supports you in the integrated development tools that use the usual, type-safe, auto-complete Java code to write routing rules without the need for a large number of XML configuration files. It is also supported to define routing and mediation rules in spring using XML configuration.
Camel integrates a large number of open-source frameworks to facilitate the development of corresponding microservices, which is easy to integrate CXF and blueprint separately.
Felix
Apache Felix is another implementation of the OSGi specification, originally intended to be written for more than 10 example on the Felix website, so choose Felix to implement the OSGi.
Project management tools Maven
In this running environment integration, the need to use a large number of plug-ins and jars, ordinary Java engineering words, too much trouble and there are many problems, so use Maven for the corresponding dependency and plug-in management.
Development tools IntelliJ
IntelliJ has a rich plug-in, with good smart hints, and support for Maven is very good, although Eclipse said there are a lot of plug-ins, but to MAVEN support is not very good, so do not choose Eclipse as a development tool.
Summarize
This article is only about the basic framework and containers needed to explain the next blog will be the specific environmental integration steps described, involving Camel and karaf in this article and so on will not be explained.
OSGI+CAMEL+KARAF Operating Environment Construction (1)