This chapter describes a quick installation example of TIBCO EBX® on Tomcat Application Server.
It does not replace the documentation of this application server.
They are not general installation recommendations, as the installation process is determined by architectural decisions, such as the technical environment, application mutualization, delivery process, and organizational decisions.
Tomcat 10.x is not supported.
The complete description of the components needed by EBX® is given in chapter Java EE deployment.
To avoid unpredictable behavior, the guideline to follow is to avoid any duplicates of ebx.jar
or other libraries in the class-loading system.
The description below uses the variable name $CATALINA_HOME
to refer to the Tomcat installation directory, and from which most relative paths are resolved. However, if the $CATALINA_BASE
directory has been set for a multiple instances configuration, it should be used for each of these references.
Refer to the Security Best Practices for information on navigating secure deployments.
Java SE 17 LTS
Apache Tomcat 9.x
Database and JDBC driver
EBX® CD
Download Tomcat 9.x core binary distributions from:
Run the installer or extract the archive and perform a standard installation with default options
Create EBX_HOME directory, for example C:\EBX\home
, or /home/ebx
Copy from EBX® CD the ebx.software/files/ebx.properties
file to EBX_HOME. In our example, we will have the following file:
C:\EBX\home\ebx.properties
, or /home/ebx/ebx.properties
If needed, edit the ebx.properties
file to override the default database. By default the standalone H2 database is defined. The property key ebx.persistence.factory
must be uncommented for other supported databases and the h2.standalone
one must be commented.
Modify $CATALINA_HOME/conf/server.xml
(or $CATALINA_BASE/conf/server.xml
) file.
Add the attribute encodedSolidusHandling="passthrough"
to the Connector
element.
Add the following line to the <Host>
element:
<Context path="/ebx" crossContext="true" docBase="ebx.war"/>
In our example, we will have:
<Host name=...>
... ...
<Context path="/ebx" crossContext="true" docBase="ebx.war"/>
... ...
</Host>
Modify the $CATALINA_HOME/conf/catalina.properties
(or $CATALINA_BASE/conf/catalina.properties
) file by adding the following lines to the tomcat.util.scan.DefaultJarScanner.jarsToSkip
property:
ebx.jar,\
ebx-addons.jar,\
Configure the Java Virtual Machine properties
For Windows' Command Prompt launch
Set the environment variables by creating a setenv.bat
file either into $CATALINA_HOME\bin
or $CATALINA_BASE\bin
. This file will hold, at least, the following lines:
set EBX_HOME=<path_to_the_directory_ebx_home> set EBX_OPTS=-Debx.home= "%EBX_HOME%" -Debx.properties= "%EBX_HOME%\ebx.properties" set JAVA_OPTS=%EBX_OPTS% -Dorg.apache.catalina.connector.CoyoteAdapter.ALLOW_BACKSLASH= true %JAVA_OPTS% |
For Windows users that have installed Tomcat as a service
Set Java options through the Tomcat service manager GUI (Java tab).
Be sure to set options on separate lines in the Java Options field of the GUI:
-Debx.home= "<path_to_the_directory_ebx_home>" -Debx.properties= "<path_to_the_directory_ebx_home>\ebx.properties" |
Update the service using the //US// parameter to set the proper classpath value.
C:\> tomcat9 //US//Tomcat9 --Classpath= "%CLASSPATH%" |
For Unix shell launch
Set the environment variables by creating a setenv.sh
file either into $CATALINA_HOME/bin
or $CATALINA_BASE/bin
. This file will hold, at least, the following lines:
EBX_HOME= "<path_to_the_directory_ebx_home>" EBX_OPTS= "-Debx.home=${EBX_HOME} -Debx.properties=${EBX_HOME}/ebx.properties" export JAVA_OPTS= "${EBX_OPTS} -Dorg.apache.catalina.connector.CoyoteAdapter.ALLOW_BACKSLASH=true ${JAVA_OPTS}" |
The Tomcat option -Dorg.apache.catalina.connector.CoyoteAdapter.ALLOW_BACKSLASH=true
avoid blocking URLs containing encoded backslashes.
Caution: Accounts used to launch EBX® must have create/update/delete rights on EBX_HOME directory.
<path_to_the_directory_ebx_home> is the directory where we copied ebx.properties
. In our example, it is C:\EBX\home
, or /home/ebx
.
Copy third-party libraries from the EBX® CD to $CATALINA_HOME/lib/
(or $CATALINA_BASE/lib/
) directory. In our example, we will have:
$CATALINA_HOME/lib/javax.mail-1.5.6.jar
coming from ebx.software/lib/lib-mail
directory.
$CATALINA_HOME/lib/h2-2.2.224.jar
(default persistence factory) coming from ebx.software/lib/lib-h2
directory.
The exact description of these components is given in chapter Software components. Obviously, if those components are already deployed on the class-loading system, they do not have to be duplicated.
Copy from EBX® CD the ebx.software/lib/ebx.jar
file to $CATALINA_HOME/lib/
(or $CATALINA_BASE/lib/
) directory. In our example, we will have:
$CATALINA_HOME/lib/ebx.jar
Copy from the EBX® CD the war files in ebx.software/webapps/wars-packaging
to the $CATALINA_HOME/webapps/
(or $CATALINA_BASE/webapps/
) directory. In our example, we will have:
$CATALINA_HOME/webapps/ebx.war
: Initialization servlet for EBX® applications
$CATALINA_HOME/webapps/ebx-root-1.0.war
: Provides a common default module for data models
$CATALINA_HOME/webapps/ebx-manager.war
: Master Data Management web application
$CATALINA_HOME/webapps/ebx-dataservices.war
: Data Services web application
$CATALINA_HOME/webapps/ebx-dma.war
: Data Model Assistant web application
$CATALINA_HOME/webapps/ebx-ui.war
: User Interface web application
After Tomcat launch, run EBX® web application by entering the following URL in the browser: http://localhost:8080/ebx/
At first launch, EBX® Wizard helps to configure the default properties of the initial repository.