The UltraESB is written in Java, making Java (JDK) the very first requirement. Lets look at the precise requirements you need, to successfully complete the installation.
The requirements for UltraESB can be categorized into two parts, which are the Operating System and the Java Development Kit.
JDK is required, JRE is NOT sufficient
Note that the UltraESB requires a Java Development Kit (JDK), not Java Runtime Environment (JRE), as it uses some tools of the JDK to operate at runtime.
The UltraESB works best on a Linux operating system, with a Kernel version 2.6 or later. Since UltraESB is a pure Java application, it will work on a Windows system as well for development use. However, a Linux system is highly recommended for production deployments for multiple reasons including - performance, ease of configuration and tuning of the OS and avoidance of file locking issues etc. Furthermore, commercial production support is only provided against Linux installations. The UltraESB is developed on Ubuntu systems, and load/stress tested on the Amazon EC2 cloud using multiple operating systems. The UltraESB performs slightly better on Ubuntu or Debian systems over CentOS, RHEL or Fedora etc.
The UltraESB is currently certified against JDK 1.7.x and 1.8.x. Currently it is developed and tested with the Oracle JDK (previously Sun JDK), and will be supported against the IBM J9 JDK possibly with additional configuration options, to workaround some limitations. Although the UltraESB will work with later versions of Oracle JDK or other JDK implementations, they are currently not certified. Note that whenever there are Sequences that require Java code/fragment compilation, a JDK is required and a JRE will not suffice. Thus the interactive start-up scripts are explicitly configured to look for and use only a JDK.
After installing the JDK, update the "Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files" for the version of the JDK by downloading the policy files from the JDK download page and by replacing the jre/lib/security/local_policy.jar and jre/lib/security/US_export_policy.jar with the versions from the downloaded archive file. The JCE policy file update is required if strong encryption is expected of the ESB during message processing.
Ensure that the JAVA_HOME environment variable points to the JDK home directory, and that the JAVA_HOME/bin directory is on the system PATH. Depending on the operating system, you may have to do this task differently. For a Linux operating system where the JDK has been installed at /opt/jdk directory, you would need to "export JAVA_HOME=/opt/jdk" and "export PATH=/opt/jdk/bin:$PATH" on the command line, or on the /etc/profile or the users’ .bash_rc or .profile file/s.