| h2. Deploy as an OSGi bundle |
| |
| Using an OSGi bundle to deploy your Camel routes allows you to use the Java or Scala DSL for defining your routes. |
| |
| In this case, we will use a Blueprint XML file to start your Camel routs. To do so, the Blueprint XML files have to be included in the bundle inside the {{OSGI-INF/blueprint}} directory. |
| {pygmentize:lang=text} |
| + <bundle classes, incl. your RouteBuilder> |
| |- META-INF |
| | |- MANIFEST.MF |
| \- OSGI-INF |
| \- blueprint |
| \- camel-context.xml |
| {pygmentize} |
| |
| As soon as the bundle becomes Active, the Blueprint extender will create the Blueprint container starting your Routes. |
| |
| h3. Example: Referring to Java or Scala RouteBuilder classes |
| If your RouteBuilder classes have been defined in the {{org.apache.servicemix.manual.camel}} package, the file would look like this: |
| {pygmentize:lang=xml} |
| <?xml version="1.0" encoding="UTF-8"?> |
| <blueprint |
| xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0" |
| xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| xsi:schemaLocation=" |
| http://www.osgi.org/xmlns/blueprint/v1.0.0 |
| http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd"> |
| |
| <camelContext xmlns="http://camel.apache.org/schema/blueprint"> |
| <package>org.apache.servicemix.manual.camel</package> |
| </camelContext> |
| |
| </blueprint> |
| {pygmentize} |
| |
| h3. Example in the distribution |
| |
| Another example for using this deployment option can be found in the {{camel-blueprint}} example that is shipped with Apache ServiceMix. |