IBM® Rational® Change 5.2 is includes the Jetty 5.1.14 web server. You can also deploy it with IBM WebSphere Application Server or WebSphere Application Server Community Edition. However, there is no option in the installer to deploy Rational Change on an Apache Tomcat server. This article explains how to deploy Rational Change 5.2 on Tomcat 5.5 with the IBM Java Runtime Environment, Version 6.0 (JRE 6).
Deploy Rational Change 5.2 on Tomcat 5.5 with IBM JRE 6.0
Install pre-requisite Rational Change service pack 5.2.0.2
- Install Rational Change 5.2, and choose Jetty from the server dialog window in the installer.
Jetty components are embedded in the installer. Therefore, the installer copies both Rational Change and Jetty components to the file systems. - Start Rational Change deployed on Jetty by running csctl.sh (for UNIX) or services (for Microsoft Windows).
- Access the admin login page of Rational Change:
http://hostname:port/context/admin (italic = variables)
Use the unique port and context value provided during installation. - While accessing the Rational Change admin login page for the first time, it opens the
Rational Directory Server (RDS) configuration page. Provide the RDS connection
information.
You will see the RDS credentials page only the first time. After the connection is established, you will be directed to the admin login page. The connection details will persist in the wsconfig/rds_config.xml file. - On the Rational Change admin login page, provide the required credentials and log in.
- Extract the Rational Change 5.2.0.2 patch, and install it through the Package Installer tab. (Follow the README.txt file instructions to install the service pack).
- Shut down the Jetty server. This will pick the new libraries provided in 5.2.0.2 service pack.
Edit Rational Change configuration files for Tomcat 5.5
- Copy the Rational Change directory from CHANGE_APP_HOME\jetty\webapps\ to the TOMCAT_HOME\webapps\ directory.
Tip:
Ignore the install.log while copying.
The Rational Change folder name under webapps is the same as the context name provided during installation. As mentioned earlier, the installation will have Jetty and Rational Change components. Only the Rational Change components need to be copied to the Tomcat installation area. Example: When installing Rational Change on Jetty, if you created a context foo that is installed under C:\Program Files\Change52, copy the foo directory from this directory:
C:\Program Files\Change52\jetty\webapps\
to the
TOMCAT_HOME\webapps\ directory - Add a new
<context-param>tag, with a param name and value, to the web.xml file that is available in TOMCAT_HOME\webapps\context name\WEB-INF\.
The context name must be preceded with a slash (/). For example:<context-param> <param-name>context</param-name> <param-value>/foo</param-value> </context-param>
The servlet API to fetch context value is not available with the servlet specification available with Tomcat 5.5. The context value is passed to Rational Change explicitly through the entry in the web.xml file. - Remove the servlet mapping tag mentioned below from the web.xml file that in
TOMCAT_HOME\webapps\context name\WEB-INF\:
<servlet-mapping> <servlet-name>action</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>
- Update the port value in the web.xml file. For example:
<context-param> <param-name>port</param-name> <param-value>8080</param-value> </context-param>
The port value in web.xml file needs to be updated with the one where Tomcat is listening. 8080 is the default port value in Tomcat. - Update the ehcache.xml file that is in
TOMCAT_HOME\webapps\contextName\WEB-INF\classes\ to change the value of the path attribute within the
diskStoretag.
The new value must be:TOMCAT_HOME\webapps\contextName\WEB-INF\wsconfig\tmpdir - (Optional) Edit the TOMCAT_HOME\conf\server.xml file to enable request logging. Remove the comment around the Valve tag that uses the AccessLogValve class and edit the attributes if required.
<!-- <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/> -->
Note:
This step is optional. To learn more about the AccessLogValve, follow the instructions in The Valve Component section of the Apache Tomcat Configuration Reference on the Apache.org website (see the Resources section here for a link).
This is an example of Valve element modified for the Rational Change application:<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" fileDateFormat="yyyy-MM-dd" prefix="access_log." suffix=".log" pattern="%h %t "%m %U" "%{Referer}i" "%{User-Agent}i" %s %b %D %{CSInfoCookie}c" resolveHosts="false"/> - Restart the Tomcat server.
Access Rational Change 5.2 from Tomcat 5.5
- Access the application with this URL:
http://hostname:port/context/admin - Use the updated port number in the URL. The new port value is the one where Tomcat is listening.
- Uninstall the instance of Rational Change that was installed using Jetty.
Deploy Rational Change 5.2 on Tomcat 6.0 with IBM JRE 6.0
- Choose any instance (fresh or existing) of Rational Change 5.2 installed with
Jetty.
The instance can be Rational Change 5.2 with or without any service packs or patches installed. - Copy the Rational Change directory available under
<CHANGE_APP_HOME>\jetty\webapps\
to this directory:
TOMCAT_HOME\webapps\
Tip:
Ignore the install.log while copying.
The Rational Change folder name under webapps is the same as the context name provided during installation. As mentioned earlier, installation will have Jetty and Rational Change components, but you need to copy only the Rational Change components to Tomcat installation area. For example, if you created a context foo when installing Rational Change on Jetty, assuming that it is installed under C:\Program Files\Change52, copy the foo directory from this directory:
C:\Program Files\Change52\jetty\webapps\
to this directory:
TOMCAT_HOME\webapps\ - Remove this servlet mapping tag from the web.xml file that is available in TOMCAT_HOME\webapps\context name\WEB-INF\:
<servlet-mapping> <servlet-name>action</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>
- Update the port value in the web.xml file. For example:
<context-param> <param-name>port</param-name> <param-value>8080</param-value> </context-param>
The port value in the web.xml file needs to be updated with the where Tomcat is listening. 8080 is the default port value in Tomcat. - Update the ehcache.xml that is available in TOMCAT_HOME\webapps\contextName\WEB-INF\classes\ to change the value of the path attribute within the
diskStoretag. The new value must be:
TOMCAT_HOME\webapps\contextName\WEB-INF\wsconfig\tmpdir - (Optional) Edit the TOMCAT_HOME\conf\server.xml file to enable request logging. Remove the comment around the
Valvetag that uses the AccessLogValve class, and edit the attributes if necessary. Example:<!— <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/> -->
Note:
This step is optional. To learn more about the AccessLogValve, follow the link http://tomcat.apache.org/tomcat-6.0-doc/config/valve.html. This is an example of the Valve element modified for Rational Change:<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" fileDateFormat="yyyy-MM-dd" prefix="access_log." suffix=".log" pattern="%h %t "%m %U" "%{Referer}i" "%{User-Agent}i" %s %b %D %{CSInfoCookie}c" resolveHosts="false"/>
- Restart the Tomcat server.
- Access the application with this URL:
http://hostname:port/context/admin
Use the updated port number in the URL. The new port value is the one where Tomcat is listening. - Uninstall the instance of Rational Change that was installed using Jetty.
Configure Tomcat to use the JRE bundled with Rational Synergy
Service mode
- If Tomcat is configured to start in service mode, launch the Apache Tomcat Properties dialog by clicking tomcat5w.exe or tomcat6w.exe from the TOMCAT_HOME\bin directory.
- Click the Java tab, and specify the path of the jvm.dll file. For example, in Java
Virtual Machine field:
SYNERGY_HOME\jre\bin\classic\jvm.dll
Startup script
- If Tomcat is configured to start through a startup script in TOMCAT_HOME\bin\startup.bat, set the value for JRE_HOME by editing the TOMCAT_HOME\bin\setenv.bat script. If the setenv.bat script does not exist, you must create a new one under the TOMCAT_HOME\bin\ directory.
- Copy this line to the beginning of the script file:
set JRE_HOME="<SYNERGY_HOME>\jre"
Startup script
- Set the value for JRE_HOME by editing the TOMCAT_HOME/bin/setenv.sh script. If the setenv.sh script does not exist, you must create a new one under the TOMCAT_HOME/bin/ directory.
- Copy this line to the beginning of script file:
JRE_HOME="<SYNERGY_HOME>/jre"; export JRE_HOME
Specify Java options and memory settings on Tomcat
Service mode
- If Tomcat is configured to start in service mode, launch the Tomcat Properties Dialog by clicking tomcat5w.exe or tomcat6w.exe from the TOMCAT_HOME\bin directory.
- Click the Java tab to specify Java Options and Memory Settings.
Startup script
- If Tomcat is configured to start through startup script in TOMCAT_HOME\bin\startup.bat, set the value to the CATALINA_OPTS variable by copying this line to the beginning of the TOMCAT_HOME\bin\setenv.bat script file.
set CATALINA_OPTS="-Xms128m -Xmx512m"
As before, if the setenv.bat script does not exist, you must create a new one under the TOMCAT_HOME\bin\ directory.
Startup script
- Set the value to variable CATALINA_OPTS by editing the TOMCAT_HOME/bin/setenv.sh script. If the setenv.sh script does not exist, you must create a new one under the TOMCAT_HOME/bin/ directory.
- Copy this line to the beginning of the script file:
CATALINA_OPTS="-Xms128m -Xmx512m"; export CATALINA_OPTS
Learn
- Start at the Rational Change page on developerWorks to learn about features and benefits, get product details and information on related Rational products, and to find more technical articles and where to get support.
- For more information, see instructions The Valve Component section of the Apache Tomcat Configuration Reference on the Apache.org website.
- Visit the Rational software area on developerWorks for technical resources and best practices for Rational Software Delivery Platform products.
- Subscribe to the developerWorks weekly email newsletter, and choose the topics to follow.
- Stay current with developerWorks technical events and webcasts focused on a variety of IBM products and IT industry topics.
- Attend a free developerWorks Live! briefing to get up-to-speed quickly on IBM products and tools, as well as IT industry trends.
- Watch developerWorks on-demand demos, ranging from product installation and setup demos for beginners to advanced functionality for experienced developers.
- Improve your skills. Check the Rational training and certification catalog, which includes many types of courses on a wide range of topics. You can take some of them anywhere, any time, and many of the "Getting Started" ones are free.
Get products and technologies
- Get the free Trial Download or check the Trials and Demos page for Rational software.
- Evaluate IBM software in the way that suits you best: Download it for a trial, try it online, use it in a cloud environment, or spend a few hours in the SOA Sandbox learning how to implement service-oriented architecture efficiently.
Discuss
- Join the Enterprise Change Management with Rational
Change forum to ask questions and participate in discussions.
- Rate or review Rational software. It's quick and easy.
- Share your knowledge and help others who use Rational software by writing a developerWorks article. Find out what makes a good developerWorks article and how to proceed.
- Follow Rational software on Facebook, Twitter (@ibmrational), and YouTube, and add your comments and requests.
- Ask and answer questions and increase your expertise when you get involved in the Rational forums, cafés, and wikis.
- Get connected. Join the Rational community to share your Rational software expertise and get connected with your peers.

Pradeep Shashidhar has ten years of experience in product development with nearly five years of experience in Rational Change development. He also has experience in Java and Java Enterprise Edition (JEE), Perl, PHP and .NET technologies. His expertise is in change and configuration management tools, payment, and e-learning domains.




