Chapter 1. About the Fuse Tooling Tutorials

The Red Hat Fuse Tooling tutorials provide developers with a hands-on introduction to using the Fuse Tooling to develop, run, test, and deploy an Apache Camel application.

Prerequisites

You should be familiar with the following software:

Overview of the Fuse Tooling tutorials

By completing these tutorials, you gain an understanding of how to use Red Hat Fuse Tooling to develop, debug, test, and deploy a simple Apache Camel application.

For more details on Fuse Tooling features, see the Tooling User Guide.

Here is a summary of the tutorials and what you accomplish in each one:

  • Chapter 2, Setting up your environment

    Create a Fuse Integration project and set up the tutorial resource files. When you create a project, it auto-creates a routing context and a preliminary route.

  • Chapter 3, Defining a Route

    Define the endpoints for a simple route that retrieves messages from a folder and copies them to another folder.

  • Chapter 4, Running a Route

    View the test messages. Run the route and verify that it works by seeing that the test messages were copied from the source folder to the target folder. For the sample application, the messages contain order information for zoo animals. For example, an order of five wombats for the Chicago zoo.

  • Chapter 5, Adding a Content-Based Router

    Add a content-based router that filters the messages and copies them to different target folders based on content in the messages. For the sample application, the messages are filtered based on whether an order is valid or not, depending on how many animals are available and how many animals are ordered. For example, if a zoo orders five zebras and only three zebras are available, the order is copied to the invalid order target folder.

  • Chapter 6, Adding another route to the routing context

    Add another route that further filters the messages and copies them to different target folders based on content in the messages. For the sample application, the valid order messages are further filtered based on the location of the zoo that is placing the order. For example, an order from the Chicago zoo is copied to the USA folder.

  • Chapter 7, Debugging a routing context

    Use the Camel debugger to set breakpoints and then step through a route to examine route and message variables.

  • Chapter 8, Tracing a message through a route

    Drop messages onto the route and track them through all route nodes.

  • Chapter 9, Testing a route with JUnit

    Create a JUnit test case for the route and then test the route.

  • Chapter 10, Publishing your project to Red Hat Fuse

    Walk through the process of publishing an Apache Camel project to Red Hat Fuse: define a local server, configure publishing options, start the server, publish the project, connect to the server, and verify that the project was successfully built and published.

About the sample application

The sample application that you build in the Fuse Tooling tutorials simulates a simple order application for zoos to order animals. Sample XML messages are provided - each XML message includes customer information (the name, city, and country of the zoo) and order information (the type and number of animals requested, and the maximum number of animals allowed).

Using the Fuse Tooling, you create a Blueprint project that takes the incoming sample messages, filters them based on their content (valid versus invalid orders), and then further sorts the valid orders by the location (country) of the zoo. In the later tutorials, you use the sample application to debug a routing context, trace a message through a route, test a route with JUnit, and finally to publish a Fuse project.

About the resource files

Each tutorial builds upon the previous one. The code generated by one tutorial is the starting point for the next tutorial so that you can complete the tutorials in sequence. Alternately, after you complete the first tutorial, you can do any other tutorial out of sequence by using the provided resource files.

The tutorials rely on resource files provided in the Fuse-tooling-tutorials-jbds-10.3.zip file located here. This zip file contains two folders:

Messages
This folder contains six message files named message1.xml, message2.xml, …​ , message6.xml. In the first tutorial, Chapter 2, Setting up your environment, you create the directory in which to store these message files and you also view their contents. You need these message files for all tutorials.
blueprintContexts

This folder contains three routing context files: