Installation on JBoss EAP

Red Hat JBoss Fuse

Install JBoss Fuse 6.2.1 on JBoss EAP 6.4

Red Hat

Version 6.2.1
21 Sep 2017

Abstract

Use this guide to help you install JBoss Fuse on JBoss EAP

Chapter 1. Installation Guide Overview

Structure of Red Hat JBoss Fuse 6.2.1

In Red Hat JBoss Fuse 6.2.1 (JBoss Fuse) you have a choice of installation platforms. JBoss Fuse can be installed on Red Hat JBoss Enterprise Application Platform 6.4 (JBoss EAP), or Apache Karaf xx.
The product is installed in packages. There are the base packages for JBoss Fuse on JBoss EAP or Karaf, and supplementary packages for additional functionality.
JBoss Fuse on Karaf can be installed as a full install, or it can be installed as a patch on to JBoss Fuse 6.2.0. JBoss Fuse on JBoss EAP must be installed as a full install.

Table 1.1. 

JBoss Fuse Version Components Prequisites
JBoss Fuse on Karaf
jboss-fuse-karaf-6.2.1.redhat-XXX
jboss-fuse-full-update-6.2.1
Optional packages:
  • Integration Pack
  • JBoss ON Pack
JBoss Fuse 6.2.0 for update package
JBoss Fuse on JBoss EAP
jboss-fuse-eap-6.2.1
Optional packages:
  • Integration Pack
  • JBoss ON Pack
JBoss EAP 6.4
Note
There is a Governance Pack available for JBoss Fuse on JBoss EAP, but it is only available for existing customers of JBoss Fuse Service Works 6.2.

Contents of JBoss Fuse Packages

The packages for JBoss Fuse contain discrete sets of functionality. The base package for the chosen platform is mandatory but the additional packages are optional.

Pack name Contents
jboss-fuse-karaf-6.2.1.redhat-XXX or
jboss-fuse-full-update-6.2.1
  • Apache Camel
  • SwitchYard
  • BPEL/Riftsaw
  • Apache CXF
  • Apache ActiveMQ
JBoss Fuse on JBoss EAP
  • Apache Camel
  • SwitchYard
  • BPEL/Riftsaw
Integration Pack Contains quickstarts to enable integration of JBoss Fuse components with other modules that are not part of this JBoss Fuse release.
JON Pack Red Hat JBoss Operations Network

Chapter 2. Read Me

2.1. Back Up Your Data

Warning
Red Hat recommends that you back up your system settings and data before undertaking any of the configuration tasks mentioned in this book.

2.2. Red Hat Documentation Site

Red Hat's official documentation site is at https://access.redhat.com/site/documentation/. There you will find the latest version of every book, including this one.

2.3. EAP_HOME

EAP_HOME refers to the root directory of the Red Hat JBoss Enterprise Application Platform installation on which JBoss Fuse is deployed.

2.4. MODE

MODE refers to the mode that your instance of JBoss EAP is running in. MODE will either be standalone or domain. For more information about MODE see JBoss EAP Operating Modes. Substitute either standalone or domain whenever you see MODE in a file path in this documentation.

Chapter 3. Install JBoss Fuse on JBoss EAP

Prerequisites

JBoss Fuse must be installed on JBoss EAP 6.4. If you need to install JBoss EAP 6.4, download it from JBoss EAP 6.4 Installer Download. See JBoss EAP 6.4 Installation Guide for installation instructions.
Important
We also recommend that you apply the latest patch to JBoss EAP 6.4. The JBoss EAP patch level should be at least 6.4.7, to avoid known issues. Patches are available from the JBoss EAP 6.4 Patches tab of the download page.

Install JBoss Fuse using Installer

  1. Download Red Hat JBoss Fuse 6.2.1 on EAP Installer to a temporary location on your file system.
  2. Navigate to $EAP_HOME of a clean instance of JBoss EAP.
  3. Run the installer with the following command:
    java -jar temporary location/fuse-eap-installer-6.2.1.redhat-084.jar
Note
Once a datastore has been has been selected at installation, it can not be changed.

Chapter 4. Monitor Fuse Resources

Abstract

Using Red Hat JBoss Operations Network (JON), you can discover, import, and monitor Red Hat JBoss Fuse.

4.1. Installation Procedure

The Fuse Plugin Pack for JBoss ON 3.3 is not installed with the JON base distribution. You must download and install it separately after you have installed JON.
To install the Fuse Plugin Pack for JBoss ON 3.3:
  1. Navigate to the Red Hat Software Downloads page on the Red Hat Customer Portal.
  2. Select JBoss ON for Fuse under Management in the sidebar menu (or using the drop-down menu for the Products field).
  3. Make sure 3.3 appears in the Version drop-down list on the Software Downloads page.
  4. Click Download next to Fuse Plugin Pack for Red Hat JBoss Operations Network 3.3 .
  5. Unzip the plugin package (jon-plugin-pack-fuse-3.3.0.GA.zip) into a temporary directory (for example, /installDir/server/).
  6. Install the jar files in one of two ways:

Chapter 5. Start and Stop the Application Server

You need to start the JBoss Enterprise Application Platform instance for JBoss Fuse to run. This is because the JBoss Fuse components run on the JBoss Enterprise Application Platform container.
Note
For more information about starting and stopping JBoss Enterprise Application Platform using alternative and more advanced methods, see the Red Hat JBoss Enterprise Application Platform Administration and Configuration Guide.

5.1. Start JBoss EAP 6

Summary

This topic covers the steps to start JBoss EAP 6.4.

Procedure 5.1. Start the Platform Service as a Standalone Server

  1. For Red Hat Enterprise Linux.

    Run the command: EAP_HOME/bin/standalone.sh
  2. For Microsoft Windows Server.

    Run the command: EAP_HOME\bin\standalone.bat
  3. Optional: Specify additional parameters.

    To print a list of additional parameters to pass to the start-up scripts, use the -h parameter.

Procedure 5.2. Start the Platform Service as a Domain Server

  1. For Red Hat Enterprise Linux.

    Run the command: EAP_HOME/bin/domain.sh
  2. For Microsoft Windows Server.

    Run the command: EAP_HOME\bin\domain.bat
  3. Optional: Specify additional parameters.

    To print a list of additional parameters to pass to the start-up scripts, use the -h parameter.

5.2. Stop JBoss EAP 6.4

You can stop JBoss EAP using the Management CLI or by pressing CTRL+C in the terminal.
  1. Stop JBoss EAPl using the Management CLI.

    • Run the EAP_HOME/bin/jboss-cli.sh command to launch the Management CLI.
      $ EAP_HOME/bin/jboss-cli.sh
    • Run the connect command to connect to the server.
      [disconnected /] connect
    • Run the shutdown command to stop the server.
      [standalone@localhost:9999 /] shutdown
    • Run the quit command to close the Management CLI.
      [standalone@localhost:9999 /] quit
  2. Stop JBoss Enterprise Application Platform in terminal window.

    Navigate to the terminal where JBoss EAP is running. Press Ctrl+C.

Chapter 6. Maven Repositories

6.1. About Maven

Apache Maven is a distributed build automation tool used in Java application development to build and manage software projects. Maven uses configuration XML files called POM (Project Object Model) to define project properties and manage the build process. POM files describe the project's module and component dependencies, build order, and targets for the resulting project packaging and output. This ensures that projects are built in a correct and uniform manner.
Maven uses repositories to store Java libraries, plug-ins, and other build artifacts. Repositories can be either local or remote. A local repository is a download of artifacts from a remote repository cached on a local machine. A remote repository is any other repository accessed using common protocols, such as http:// when located on an HTTP server, or file:// when located on a file server. The default repository is the public remote Maven 2 Central Repository.
Configuration of Maven is performed by modifying the settings.xml file. You can either configure global Maven settings in the M2_HOME/conf/settings.xml file, or user-level settings in the USER_HOME/.m2/settings.xml file.
For more information about Maven, see Welcome to Apache Maven.
For more information about Maven repositories, see Apache Maven Project - Introduction to Repositories.
For more information about Maven POM files, see the Apache Maven Project POM Reference.
Note
Red Hat JBoss Fuse has been built with maven 3.0.x Therefore, this is the recommended maven version for building your own SwitchYard applications.

6.2. About The Provided Maven Repositories

A set of repositories containing artifacts required to build applications based on Red Hat JBoss Fuse is provided with this release. Maven must be configured to use these repositories and the Maven Central Repository in order to provide correct build functionality.
Two interchangeable sets of repositories ensuring the same functionality are provided. The first set is available for download and storage in a local file system, the second set is hosted online for use as remote repositories. If you provided the location of Maven's settings.xml file during installation, Maven is already configured to use the online repositories. If you did not provide the location during installation, you need to configure Maven manually by following the procedure in Section 6.3, “Configure Maven to Use the Online Repositories” .

6.3. Configure Maven to Use the Online Repositories

The online repositories required for Red Hat JBoss Fuse applications are located at http://maven.repository.redhat.com/techpreview/all/ and http://repository.jboss.org/nexus/content/repositories/public/.
If you provided the location of Maven's settings.xml file during installation, Maven is already configured to use the online repositories. If you did not provide the location during installation, you need to configure Maven manually by following the procedure in Section 6.3, “Configure Maven to Use the Online Repositories”.
If you did not configure the Maven repository during installation, you can configure it using the following procedure. (It is also possible to do this using the project's POM file, but this is not recommended.)

Procedure 6.1. Configuring Maven to Use the Online Repositories

  1. Add entries for the online repositories to Maven's settings.xml file as in the code sample below:
    <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" 
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
    
      <profiles>
        <!-- Profile with online repositories required by Fuse -->
        <profile>
          <id>fsw-online-repos</id>
          <repositories>
            <repository>
              <id>jboss-ga-repository</id>
              <url>http://maven.repository.redhat.com/techpreview/all</url>
              <releases>
                <enabled>true</enabled>
              </releases>
              <snapshots>
                <enabled>false</enabled>
              </snapshots>
            </repository>
            <repository>
              <id>jboss-public-repository</id>
              <url>http://repository.jboss.org/nexus/content/repositories/public/</url>
              <releases>
                <enabled>true</enabled>
              </releases>
              <snapshots>
                <enabled>false</enabled>
              </snapshots>
            </repository>
            <repository>
              <id>jboss-fuse-public-repository</id>
              <url>https://repo.fusesource.com/nexus/content/groups/public/</url>
              <releases>
                <enabled>true</enabled>
              </releases>
              <snapshots>
                <enabled>false</enabled>
              </snapshots>
            </repository>
          </repositories>
          <pluginRepositories>
            <pluginRepository>
              <id>jboss-ga-plugin-repository</id>
              <url>http://maven.repository.redhat.com/techpreview/all</url>
              <releases>
                <enabled>true</enabled>
              </releases>
              <snapshots>
                <enabled>false</enabled>
              </snapshots>
            </pluginRepository>
            <pluginRepository>
              <id>jboss-public-plugin-repository</id>
              <url>http://repository.jboss.org/nexus/content/repositories/public/</url>
              <releases>
                <enabled>true</enabled>
              </releases>
              <snapshots>
                <enabled>false</enabled>
              </snapshots>
            </pluginRepository>
            <pluginRepository>
              <id>jboss-fuse-public-plugin-repository</id>
              <url>https://repo.fusesource.com/nexus/content/groups/public/</url>
              <releases>
                <enabled>true</enabled>
              </releases>
              <snapshots>
                <enabled>false</enabled>
              </snapshots>
            </pluginRepository>
          </pluginRepositories>
        </profile>    
      </profiles>
    
      <activeProfiles>
        <!-- Activation of the Fuse profile -->
        <activeProfile>fsw-online-repos</activeProfile>
      </activeProfiles>
    
    </settings>
  2. If you modified the settings.xml file while JBoss Developer Studio was running, you must refresh Maven settings in the IDE. From the menu, choose WindowPreferences. In the Preferences Window, expand Maven and choose User Settings. Click the Update Settings button to refresh the Maven user settings in JBoss Developer Studio.

    Figure 6.1. Update Maven User Settings

    Update Maven User Settings

Result

Maven has been configured to use the online repositories provided for Red Hat JBoss Fuse.

Important
If your cached local Maven repository contains outdated artifacts, you may encounter one of the following Maven errors when you build or deploy your project:
  • Missing artifact ARTIFACT_NAME
  • [ERROR] Failed to execute goal on project PROJECT_NAME; Could not resolve dependencies for PROJECT_NAME
To resolve the issue, delete the cached local repository - the ~/.m2/repository/ directory on Linux or the %SystemDrive%\Users\USERNAME\.m2\repository\ directory on Windows. This will force Maven to download correct versions of required artifacts during the next build.

6.4. Dependency Management

In order to use correct Maven dependencies in your Red Hat JBoss Fuse project, relevant Bill Of Materials (BOM) and parent POM files must be added to the project's pom.xml file. Adding the BOM and parent will ensure that correct versions of plug-ins and transitive dependencies from the provided Maven repositories are included in the project.
To ensure correct dependency usage in your project, declare the following parent in the project's pom.xml file:
  • org.jboss.fuse.bom:jboss-fuse-parent:6.2.1.redhat-084
and add the following two BOM files as dependencies in the dependencyManagement section:
  • org.jboss.fuse.bom:jboss-fuse-parent:6.2.1.redhat-084
Use the entries from the code sample below for this purpose.
<parent>
  <groupId>org.jboss.fuse.bom</groupId>
  <artifactId>jboss-fuse-parent</artifactId>
  <version>6.2.1.redhat-084</version>
</parent>

...

<dependencyManagement>
  <dependencies>
    <dependency>
   	<groupId>org.jboss.fuse.bom</groupId>
   	<artifactId>jboss-fuse-parent</artifactId>
   	<version>6.2.1.redhat-084</version>
  	 <type>pom</type>
   	<scope>import</scope>
    </dependency>
  </dependencies>
</dependencyManagement>

Chapter 7. Install Red Hat JBoss Development Tools

7.1. Install Red Hat JBoss Developer Studio

Red Hat JBoss Developer Studio (JBDS) is a tool that can be used with JBoss Fuse to develop applications in a structured way. JBDS is a separate product from JBoss Fuse and therefore needs a separate licence.
JBDS 8.1 must be used with JBoss Fuse 6.2.1. Full installation instructions for JBDS 8.1 are available at Install Red Hat JBoss Developer Studio

7.2. Install Red Hat JBoss Developer Studio Integration Stack

Red Hat JBoss Developer Studio Integration Stack (JBDS IS) is a set of Eclipse-based development tools. It further enhances the IDE functionality provided by JBoss Developer Studio, with plug-ins specifically for use when developing for other Red Hat JBoss products.
JBDS IS 8.0.4 must be used with JBoss Fuse 6.2.1 and JBDS 8.1. Full installation instructions for JBDS IS 8.0.4 are available at Install Red Hat JBoss Developer Studio Integration Stack

Appendix A. Prerequisite Software

A.1. Install OpenJDK on Red Hat Linux

This topic covers the steps to install OpenJDK on RedHat Linux.
  1. Subscribe to the Base Channel Obtain the OpenJDK from the RHN base channel. (Your installation of Red Hat Enterprise Linux is subscribed to this channel by default.)
  2. Install the Package. Use the yum utility to install OpenJDK: yum install java-1.7.0-openjdk-devel
  3. Verify that OpenJDK is now your system default. You can ensure the correct JDK is set as the system default by following the steps below.
    1. As a root user, run the alternatives command for java: /usr/sbin/alternatives --config java
    2. Select /usr/lib/jvm /jre-1.7.0-openjdk/bin/java .
    3. Apply the same for javac: /usr/sbin/alternatives --config javac
    4. Select /usr/lib/jvm /java-1.7.0-openjdk/bin/javac.

Result

OpenJDK is installed successfully on your machine.

A.2. Install Maven

Prerequisites

The following software must be installed:

  • An archiving tool for extracting the contents of compressed files.
  • OpenJDK.

Procedure A.1. Install Maven

  1. Download Maven.

    1. Enter http://maven.apache.org/download.cgi in the address bar of a browser.
    2. Download apache-maven-3.0.5 ZIP file and save it to your hard drive.
  2. Install and configure Maven.

    • On Red Hat Enterprise Linux

      1. Extract the ZIP archive to the directory where you wish to install Maven.
      2. Open a terminal.
      3. Add the M2_HOME environment variable by entering the following command:
        export M2_HOME=/usr/local/apache-maven/apache-maven-3.0.x
      4. Add the M2 environment variable by entering the following command:
        export M2=$M2_HOME/bin
      5. Add the M2 environment variable to your path by entering the following command:
        export PATH=$M2:$PATH
      6. Make sure that JAVA_HOME is set to the location of your JDK. For example:
        export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk.x86_64
      7. Make sure that $JAVA_HOME/bin is in your PATH environment variable.
      8. Run the following command to verify that Maven is installed successfully on your machine:
        mvn --version
    • On Microsoft Windows

      1. Extract the ZIP archive to the directory where you wish to install Maven. The subdirectory apache-maven-3.0.x is created from the archive.
      2. Press Start+Pause|Break. The System Properties dialog box is displayed.
      3. Click the Advanced tab and click Environment Variables.
      4. Under System Variables, select Path.
      5. Click Edit and add the two Maven paths using a semicolon to separate each entry.
        • Add the M2_HOME variable and set the path to C:\Program Files\Apache Software Foundation\apache-maven-3.0.X.
        • Add the M2 variable and set the value to %M2_HOME%\bin.
      6. Update or create the Path environment variable:
        • Add the %M2% variable to allow Maven to be executed from the command line.
        • Add the variable %JAVA_HOME%\bin to set the path to the correct Java installation.
      7. Click OK to close all the dialog boxes including the System Properties dialog box.
      8. Open Windows command prompt and run the following command to verify that Maven is installed successfully on your machine:
        mvn --version

Result

Maven is successfully installed and configured on your machine.

Appendix B. Verify Your Red Hat JBoss Fuse Installation

After you complete the JBoss Fuse installation, you can verify if the product has been installed successfully.
  1. If no error was reported, you can verify the installation by performing the following steps:
    • Start the JBoss EAP server by running standalone.sh command
    • Open the server.log file to check if any error messages have been logged and that SwitchYard (and other component subsystems) have loaded correctly
    • Navigate to the Management Console (http://localhost:9990/) check that you can see the SwitchYard Runtime properties.
    • Compile, deploy and run a quickstart application.

Legal Notice

Trademark Disclaimer

The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, MetaMatrix, Fedora, the Infinity Logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Apache, ServiceMix, Camel, CXF, and ActiveMQ are trademarks of Apache Software Foundation. Any other names contained herein may be trademarks of their respective owners.