Chapter 1. Install Fuse for Development on Apache Karaf
To develop Fuse applications that run on Karaf, install Fuse locally as described in the following topics:
1.1. Prerequisites for installing Fuse on Apache Karaf
Before you install Fuse on Apache Karaf, ensure that your system:
- Meets hardware requirements.
- Is a supported platform.
- Has a supported Java runtime.
- Runs supported standard software.
1.1.1. Fuse on Apache Karaf hardware requirements
The hardware requirements for a full installation of Fuse on Apache Karaf are:
- 250 MB of free disk space
- 2 GB of RAM
In addition, a system that is running Fuse requires space for caching, persistent message stores, and other functions. The actual requirement is dependent on what your Fuse applications do.
1.1.2. Fuse on Apache Karaf supported platforms
- Confirm that the system on which you plan to install Fuse is running a supported platform. Red Hat tests and supports Fuse products on the platforms that are listed in Red Hat Fuse Supported Configurations.
1.1.3. Fuse on Apache Karaf supported Java runtime
See the section Supported Java Versions in the article Red Hat Fuse Supported Configurations for a list of supported runtime versions.
You must not install Your Java runtime in a directory path that includes whitespace. Whitespace in paths causes unpredictable errors in Fuse on Apache Karaf at run time.
C:\Program Files\Java\jdk8 is not an acceptable path.
1.1.4. Fuse on Apache Karaf supported standards
See the article Red Hat Fuse Supported Standards for a list of supported standard software:
- Web services
- Transport protocols.
1.2. Install Fuse on Apache Karaf
The standard installation package for Fuse 7.12 on Karaf is available for download from the Red Hat Customer Portal. It installs the standard assembly of the Apache Karaf container, and provides the full Fuse technology stack.
It is possible to create your own custom assembly of Fuse 7.12, which contains a customized subset of the Fuse features and bundles. The custom quickstart demonstrates how to use Maven to create a custom assembly of Red Hat Fuse. You can install all the quickstarts from a downloadable file available on the Fuse Software Downloads page.
The system on which you install Fuse must meet the hardware and software requirements described in Section 1.1, “Prerequisites for installing Fuse on Apache Karaf”.
In a browser, go to the Fuse Software Downloads page.
If you are not already logged in to the Red Hat customer portal, there is a prompt to log in and then the download page appears (your account must be associated with a Red Hat Fuse subscription).
- In the Fuse Software Downloads page, to the right of Red Hat Fuse 7.12 on Karaf Installer, click Download to obtain a local zip file.
Extract the contents of the zip file into a directory for which you have all permissions.
Do not unpack the zip file into a directory that has spaces or any of the following special characters in its path name:
". For example, do not unpack into
C:\Documents and Settings\Greco#Roman\Desktop\fuse.
If you are using the IBM JDK:
Example 1.1. Additional steps for the IBM JDK
In your Fuse installation directory, in the
/lib/endorseddirectory, remove the
saaj-api .jarfile, for example:
JAVA_OPTSenvironment variable as follows:
You must set the
JAVA_OPTSenvironment variable before you start the Karaf container.
Add an administrator user to enable remote access to the Fuse on Karaf container and to access the Fuse Console.Note
By default, no users are defined for the container. You can run the container in the foreground in this case, but you cannot access the container remotely, and you cannot run it in the background.
Create at least one user with the
adminrole by following these steps:
In a text editor, open the
etc/users.propertiesfile, which is in your Fuse installation directory.
Locate the following lines:
#admin = admin,_g_:admingroup #_g_\:admingroup = group,admin,manager,viewer,systembundles,ssh
- For each line, remove the leading # character to uncomment the line.
- In the first line, change the first instance of admin to a username that you choose, for example user1.
In the same line, change the second instance of admin to a password for that user, for example passw0rd.
user1 = passw0rd,_g_:admingroup _g_\:admingroup = group,admin,manager,viewer,systembundles,ssh
- Save and close the file.
- In a text editor, open the
To start Fuse, run
bin/fuseon Linux/Unix or
Optionally, to access the Fuse Console, open the provided URL in a web browser and login with the username and password that you set in the
etc/users.propertiesfile. For more information about using the Fuse Console see Managing Fuse on Karaf Standalone.
1.3. About running Fuse on Karaf offline
You can run the Apache Karaf container in offline mode, that is, without an Internet connection. However, if you are planning to deploy custom applications to the container, it might be necessary to download additional dependencies to a local Maven repository before you can run the container in offline mode with these applications.
To run the Apache Karaf container in offline mode, it is necessary to distinguish between the following kinds of dependencies:
- Runtime dependencies are dependencies that are required to run the Apache Karaf container in its default configuration.
- Build-time dependencies are dependencies that are required to build a custom application, which might include third-party libraries.
Here is a summary of what can be done in offline mode and what needs to be done in online mode (with an Internet connection):
Running the Apache Karaf container in its default configuration is supported in offline mode. The default configuration of the Apache Karaf container is specified by the
featuresBootproperty in the
etc/org.apache.karaf.features.cfgfile. The required dependencies are provided in the
system/sub-directory of the installation.
Installing additional features is, in general, not supported in offline mode. In principle, you can use the
features:installcommand to install any of the features from the standard feature repositories (as specified by the
featuresRepositoriesproperty in the
etc/org.apache.karaf.features.cfgfile), but the majority of these features must be downloaded from the Internet and are thus not supported in offline mode.
- Deploying custom applications is, in general, not supported in offline mode. There may be some cases where an application with a minimal set of build-time dependencies is deployable offline. However, custom applications typically have third-party dependencies that require an Internet connection so that JAR files can be downloaded by Apache Maven.
1.4. Optionally use standalone Apache distributions
Red Hat Fuse provides an additional package to download, which contains the standard distributions of Apache Camel and Apache CXF. If you want to use a standard, upstream distribution of Apache Camel or Apache CXF (without the OSGi container) use the archived versions in the downloaded
- Log in to the Red Hat customer portal.
- Go to the Red Hat Customer Portal→Downloads→Red Hat Fuse→Downloads page.
Versiondrop-down list on the
Download the Red Hat Fuse 7.12.0 Extras archive.
The extras archive file contains the following archive files nested inside it:
- Copy these files to the desired location and decompress them using the appropriate utility for your platform.
Do not unpack an archive file into a folder that has spaces in its path name. For example, do not unpack into
C:\Documents and Settings\Greco Roman\Desktop\fuse.