Red Hat Training

A Red Hat training course is available for Red Hat Fuse

1.2. WAR Build and Deployment Model

How to install Fuse libraries

There is no need to install the JBoss Fuse libraries directly into a Web server installation. Under the WAR deployment model, all of the requisite JBoss Fuse libraries are packaged into your application's WAR file.
Before you can build a WAR file, however, you need to install and configure Apache Maven as described in Section 2.1, “Preparing to use Maven”.

Build model

Figure 1.1, “Building the WAR with Maven” shows an overview of the model for building WAR files for JBoss Fuse applications. The WAR file is generated using a Maven project, which compiles the Java source code belonging to the project and also downloads any required dependencies from remote Maven repositories. The WAR configuration, compiled classes, and downloaded (or locally cached) dependencies are then packaged into the WAR file.

Figure 1.1. Building the WAR with Maven

Maven POM file

The normal approach to building JBoss Fuse applications is to use the Apache Maven build system. The Maven build system is configured by a POM file, pom.xml, which is typically used to configure the following aspects of the build:
  • The packaging type to be war (which instructs Maven to build a WAR file).
  • Dependent JAR files, which will be bundled with the WAR (including the requisite JBoss Fuse libraries).
  • The name of the WAR file.

Build process

Apache Maven is fundamentally a distributed build system. In its normal mode of operation (online), any dependencies it cannot find in its own cache (or local repository) will be downloaded from remote repositories on the Internet. Assuming that you have configured Maven with the Maven repository URLs for JBoss Fuse, Maven will download all of the required JBoss Fuse dependencies and transitive dependencies (that is, dependencies of dependencies), and embed these JBoss Fuse JAR libraries into the generated WAR file.

Deployment

The generated WAR file encapsulates all of the code and resources required to deploy your JBoss Fuse application to a Web server. After building the WAR, you can deploy it into your Web server in the usual way (for example, by manually copying it into a particular hot deploy directory for your Web server).
For more details, see the tutorials.