Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Instant Apache Camel Messaging System

You're reading from   Instant Apache Camel Messaging System Tackle integration problems and learn practical ways to make data flow between your application and other systems using Apache Camel

Arrow left icon
Product type Paperback
Published in Sep 2013
Publisher Packt
ISBN-13 9781782165347
Length 78 pages
Edition 1st Edition
Concepts
Arrow right icon
Author (1):
Arrow left icon
Evgeniy Sharapov Evgeniy Sharapov
Author Profile Icon Evgeniy Sharapov
Evgeniy Sharapov
Arrow right icon
View More author details
Toc

Table of Contents (7) Chapters Close

Instant Apache Camel Messaging System
Credits
About the Author
About the Reviewer
www.packtpub.com
packtlib.packtpub.com
1. Instant Apache Camel Messaging System

Installation


Apache Camel is a regular Java library. All the rules applicable to a Java library apply here as well and, as with any Java library, there are two basic ways to add Apache Camel to your project: using a dependency management tool and manually; each one has its pros and cons. Here, we will tell you just how to start using Apache Camel depending on your situation.

Using a dependency management tool

Depending on what you use to manage your project, there are different ways to start using Camel libraries. You can use either Maven or Gradle as both are very similar to each other. Maven is a de facto standard in the Java world for managing projects and it provides much better support than other libraries among most popular IDEs, so we will be using it for our examples later in the book, but our setup could easily be translated into Gradle scripts.

Note

At present, the released stable version of Apache Camel is 2.10.4.

Step 1 – creating a project

First, if you don't have a project yet, create one with the following command line (assuming that you want your application's name to be cuscom and packages to start with com.company, if not, change the command accordingly):

mvn archetype:generate -DgroupId=com.company -DartifactId=cuscom -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

Now, go to the project directory cuscom.

Note

Apache Camel is a modular framework and its modules can be added or removed at will. However, all modules used should have the same version. We will create a property, camel-version, and then use it for a particular version number when we add Camel modules to the dependencies list.

Step 2 – editing the POM file

To make specifying the version of Apache Camel and its modules easier, add the following to your POM file:

<properties>
  <camel-version>2.10.4</camel-version>
</properties>

Tip

Downloading the example code

You can download the example code files for all Packt books you have purchased from your account at http://www.packtpub.com. If you purchased this book elsewhere, you can visit http://www.packtpub.com/support and register to have the files e-mailed directly to you.

If you already have the properties element, just put the camel-version element inside it.

Add the following lines to the list of the dependencies in your pom.xml file:

<dependency>
  <groupId>org.apache.camel</groupId>
    <artifactId>camel-core</artifactId>
    <version>${camel-version}</version>
</dependency>

If you are planning on working with your project using Eclipse, run:

mvn eclipse:eclipse

If you are planning on working with your project using IntelliJ IDEA, run:

mvn idea:idea

That is it. Depending on the IDE you use, if any, you might need to update dependencies before you are able to start using them in your code.

As you may have noticed, we have added camel-core, which contains only the basic components and core functionality. The real power of Apache Camel stems from its modularity and the availability of various components that let developers integrate different systems and mediate data between them.

The manual way

Managing JAR files for your project in a manual way might be suitable in some cases, for instance, if you are using an IDE and have a project directories layout that is very specific and different from the standard Maven directories layout.

Step 1 – downloading Apache Camel

First, you have to go to http://camel.apache.org/download.html and download a ZIP or tar.gz archive with the Apache Camel release. At present, the latest Apache Camel release is 2.10.4, so we download the apache-camel-2.10.4.zip file. Unpack it with % unzip apache-camel-2.10.4.zip.

If we now go to the directory apache-camel-2.10.4, we will see the following structure:

Inside the doc/ directory, there are HTML and PDF versions of the Apache Camel user's manual. These are very useful documents.

Inside the examples/ directory, there are quite a few example applications using Apache Camel and its components. All of these examples use Maven and they are a good starting point for your application.

Inside the lib/ directory, there are JAR files. The JAR file that would bring Apache Camel functionality into our application is camel-core-2.10.4.jar.

Other JAR files are Apache Camel components which we will talk about in the following section. Also, there are two subdirectories: optional/ with optional libraries, for example, the Log4j logging library, and spring/ with Spring Framework 3.0 release files.

Note

Logging in Java has been a notoriously confusing subject. There are multiple ways to have a logging functionality in your application, which may sometimes not work perfectly, especially when it comes to an application deployed on an application container. As of now, consensus recommends using the SLF4J logging library in your code and then adapting it to whichever library is used for logging, Log4J, java.util.logging, and so on.

Step 2 – adding JAR files to your classpath

Copy camel-core-2.10.4.jar, according to your application layout, to a directory with other JAR files and add it to CLASSPATH.

And that's it

This is all you need to do in order to start using Apache Camel in your Java application.

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime