Configuring Apache Tomcat server to run as a Windows service

To run Jazz™ Team Server as a Windows service, you must configure tomcat7.exe that ships with the Jazz Team Server.

Before you begin

You must edit the teamserver.properties and log4j.properties files of each installed application to include absolute paths as follows:
Note: In the following examples, the default installation directory is used. Change the path according to your installation and note the use of the forward slash (/) in the property files. Also to avoid problems, do not use spaces in file paths. For example, for the Program Files directory you can use PROGRA~1.

If the following entries are not present in your teamserver.properties files, do not add them. In addition, if they are present, but commented out, do not uncomment them. However, you might want to change their values to absolute paths for later use.

  1. Edit the C:\Program Files\IBM\JazzTeamServer\server\conf\jts\teamserver.properties file:
    1. If you use Apache Derby as your database, change com.ibm.team.repository.db.jdbc.location=conf/jts/derby/repositoryDB to:
      com.ibm.team.repository.db.jdbc.location=C\:/PROGRA~1/IBM/JazzTeamServer/server/conf/jts/derby/repositoryDB
    2. If you use Apache Derby as your data warehouse, change com.ibm.team.datawarehouse.db.jdbc.location=conf/jts/derby/warehouseDB to:
      com.ibm.team.datawarehouse.db.jdbc.location=C\:/PROGRA~1/IBM/JazzTeamServer/server/conf/jts/derby/warehouseDB
    3. Change com.ibm.team.fulltext.indexLocation=conf/jts/indices/workitemindex to:
      com.ibm.team.fulltext.indexLocation=C\:/PROGRA~1/IBM/JazzTeamServer/server/conf/jts/indices/workitemindex
    4. Change com.ibm.team.jfs.index.root.directory=indices to:
      com.ibm.team.jfs.index.root.directory=C\:/PROGRA~1/IBM/JazzTeamServer/server/conf/jts/indices
  2. Edit the C:\Program Files\IBM\JazzTeamServer\server\conf\ccm\teamserver.properties file:
    1. If you use Apache Derby as your database, change com.ibm.team.repository.db.jdbc.location=conf/ccm/derby/repositoryDB to:
      com.ibm.team.repository.db.jdbc.location=C\:/PROGRA~1/IBM/JazzTeamServer/server/conf/ccm/derby/repositoryDB
    2. If you use Apache Derby as your data warehouse, change com.ibm.team.datawarehouse.db.jdbc.location=//localhost\:1527/conf/jts/derby/warehouseDB to:
      com.ibm.team.datawarehouse.db.jdbc.location=//localhost\:1527/C\:/PROGRA~1/IBM/JazzTeamServer/server/conf/jts/derby/warehouseDB
    3. Change com.ibm.team.fulltext.indexLocation=conf/ccm/indices/workitemindex to:
      com.ibm.team.fulltext.indexLocation=C\:/PROGRA~1/IBM/JazzTeamServer/server/conf/ccm/indices/workitemindex
    4. Change com.ibm.team.jfs.index.root.directory=indices to:
      com.ibm.team.jfs.index.root.directory=C\:/PROGRA~1/IBM/JazzTeamServer/server/conf/ccm/indices
  3. Edit the C:\Program Files\IBM\JazzTeamServer\server\conf\qm\teamserver.properties file:
    1. If you use Apache Derby as your database, change com.ibm.team.repository.db.jdbc.location=conf/qm/derby/repositoryDB to:
      com.ibm.team.repository.db.jdbc.location=C\:/PROGRA~1/IBM/JazzTeamServer/server/conf/qm/derby/repositoryDB
    2. If you use Apache Derby as your data warehouse, change com.ibm.team.datawarehouse.db.jdbc.location=//localhost\:1527/conf/jts/derby/warehouseDB to:
      com.ibm.team.datawarehouse.db.jdbc.location=//localhost\:1527/C\:/PROGRA~1/IBM/JazzTeamServer/server/conf/jts/derby/warehouseDB
    3. Change com.ibm.team.fulltext.indexLocation=conf/qm/indices/workitemindex to:
      com.ibm.team.fulltext.indexLocation=C\:/PROGRA~1/IBM/JazzTeamServer/server/conf/qm/indices/workitemindex
    4. Change com.ibm.team.jfs.index.root.directory=indices to:
      com.ibm.team.jfs.index.root.directory=C\:/PROGRA~1/IBM/JazzTeamServer/server/conf/qm/indices
  4. Edit the C:\Program Files\IBM\JazzTeamServer\server\conf\rm\teamserver.properties file:
    1. If you use Apache Derby as your database, change com.ibm.team.repository.db.jdbc.location=conf/rm/derby/repositoryDB to:
      com.ibm.team.repository.db.jdbc.location=C\:/PROGRA~1/IBM/JazzTeamServer/server/conf/rm/derby/repositoryDB
    2. If you use Apache Derby as your data warehouse, change com.ibm.team.datawarehouse.db.jdbc.location=//localhost\:1527/conf/jts/derby/warehouseDB to:
      com.ibm.team.datawarehouse.db.jdbc.location=//localhost\:1527/C\:/PROGRA~1/IBM/JazzTeamServer/server/conf/jts/derby/warehouseDB
    3. Change com.ibm.team.jfs.index.root.directory=indices to:
      com.ibm.team.jfs.index.root.directory=C\:/PROGRA~1/IBM/JazzTeamServer/server/conf/rm/indices
  5. Edit the C:\Program Files\IBM\JazzTeamServer\server\conf\dcc\teamserver.properties file:
    1. If you use Apache Derby as your database, change com.ibm.team.repository.db.jdbc.location=conf/dcc/derby/repositoryDB to:
      com.ibm.team.repository.db.jdbc.location=C\:/PROGRA~1/IBM/JazzTeamServer/server/conf/dcc/derby/repositoryDB
    2. If you use Apache Derby as your data warehouse, change com.ibm.team.datawarehouse.db.jdbc.location=//localhost\:1527/conf/jts/derby/warehouseDB to:
      com.ibm.team.datawarehouse.db.jdbc.location=//localhost\:1527/C\:/PROGRA~1/IBM/JazzTeamServer/server/conf/jts/derby/warehouseDB
    3. Change com.ibm.team.fulltext.indexLocation=conf/dcc/indices/workitemindex to:
      com.ibm.team.fulltext.indexLocation=C\:/PROGRA~1/IBM/JazzTeamServer/server/conf/dcc/indices/workitemindex
    4. Change com.ibm.team.jfs.index.root.directory=indices to:
      com.ibm.team.jfs.index.root.directory=C\:/PROGRA~1/IBM/JazzTeamServer/server/conf/dcc/indices
  6. Edit the C:\Program Files\IBM\JazzTeamServer\server\conf\gc\teamserver.properties file:
    1. If you use Apache Derby as your database, change com.ibm.team.repository.db.jdbc.location=conf/gc/derby/repositoryDB to:
      com.ibm.team.repository.db.jdbc.location=C\:/PROGRA~1/IBM/JazzTeamServer/server/conf/gc/derby/repositoryDB
    2. If you use Apache Derby as your data warehouse, change com.ibm.team.datawarehouse.db.jdbc.location=//localhost\:1527/conf/jts/derby/warehouseDB to:
      com.ibm.team.datawarehouse.db.jdbc.location=//localhost\:1527/C\:/PROGRA~1/IBM/JazzTeamServer/server/conf/jts/derby/warehouseDB
    3. Change com.ibm.team.fulltext.indexLocation=conf/gc/indices/workitemindex to:
      com.ibm.team.fulltext.indexLocation=C\:/PROGRA~1/IBM/JazzTeamServer/server/conf/gc/indices/workitemindex
    4. Change com.ibm.team.jfs.index.root.directory=indices to:
      com.ibm.team.jfs.index.root.directory=C\:/PROGRA~1/IBM/JazzTeamServer/server/conf/gc/indices
  7. Edit the C:\Program Files\IBM\JazzTeamServer\server\conf\jts\log4j.properties file:
    1. Change log4j.appender.file.File=logs/jts.log to:
      log4j.appender.file.File=C\:/PROGRA~1/IBM/JazzTeamServer/server/logs/jts.log
    2. Change log4j.appender.etl.File=logs/jts-etl.log to:
      log4j.appender.etl.File=C\:/PROGRA~1/IBM/JazzTeamServer/server/logs/jts-etl.log
    3. Change log4j.appender.etlDriver.File=logs/jts-etl-driver.log to:
      log4j.appender.etlDriver.File=C\:/PROGRA~1/IBM/JazzTeamServer/server/logs/jts-etl-driver.log
    4. Change log4j.appender.etlfilter.File=logs/etl-filter.log to:
      log4j.appender.etlfilter.File=C\:/PROGRA~1/IBM/JazzTeamServer/server/logs/etl-filter.log
  8. Edit the C:\Program Files\IBM\JazzTeamServer\server\conf\ccm\log4j.properties file:
    1. Change log4j.appender.file.File=logs/ccm.log to:
      log4j.appender.file.File=C\:/PROGRA~1/IBM/JazzTeamServer/server/logs/ccm.log
    2. Change log4j.appender.etl.File=logs/ccm-etl.log to:
      log4j.appender.etl.File=C\:/PROGRA~1/IBM/JazzTeamServer/server/logs/ccm-etl.log
  9. Edit the C:\Program Files\IBM\JazzTeamServer\server\conf\qm\log4j.properties file:
    1. Change log4j.appender.file.File=logs/qm.log to:
      log4j.appender.file.File=C\:/PROGRA~1/IBM/JazzTeamServer/server/logs/qm.log
    2. Change log4j.appender.etl.File=logs/qm-etl.log to:
      log4j.appender.etl.File=C\:/PROGRA~1/IBM/JazzTeamServer/server/logs/qm-etl.log
  10. Edit the C:\Program Files\IBM\JazzTeamServer\server\conf\rm\log4j.properties file:
    1. Change log4j.appender.rmLog.File=logs/rm.log to:
      log4j.appender.rmLog.File=C\:/PROGRA~1/IBM/JazzTeamServer/server/logs/rm.log
    2. Change log4j.appender.rmPerfLog.File=logs/rmPerfLog.log to:
      log4j.appender.rmPerfLog.File=C\:/PROGRA~1/IBM/JazzTeamServer/server/logs/rmPerfLog.log
    3. Change log4j.appender.rmPerfSnap.File=logs/rmPerfSnapshots.log to:
      log4j.appender.rmPerfSnap.File=C\:/PROGRA~1/IBM/JazzTeamServer/server/logs/rmPerfSnapshots.log
    4. Change log4j.appender.rrdg.File=logs/rrdg.log to:
      log4j.appender.rrdg.File=C\:/PROGRA~1/IBM/JazzTeamServer/server/logs/rrdg.log
    5. Change log4j.appender.rmFilter.File=logs/rmfilter.log to:
      log4j.appender.rmFilter.File=C\:/PROGRA~1/IBM/JazzTeamServer/server/logs/rmfilter.log
    6. Change log4j.appender.etlDriver.File=logs/rm-etl-driver.log to:
      log4j.appender.etlDriver.File=C\:/PROGRA~1/IBM/JazzTeamServer/server/logs/rm-etl-driver.log
    7. Change log4j.appender.etl.File=logs/rm-etl.log to:
      log4j.appender.etl.File=C\:/PROGRA~1/IBM/JazzTeamServer/server/logs/rm-etl.log
    8. Change log4j.appender.etlfilter.File=logs/rm-etl-filter.log to:
      log4j.appender.etlfilter.File=C\:/PROGRA~1/IBM/JazzTeamServer/server/logs/rm-etl-filter.log
  11. Edit the C:\Program Files\IBM\JazzTeamServer\server\conf\dcc\log4j.properties file:
    1. Change log4j.appender.file.File=logs/dcc.log to:
      log4j.appender.file.File=C\:/PROGRA~1/IBM/JazzTeamServer/server/logs/dcc.log
    2. Change log4j.appender.dccetl.File=logs/dcc_etl.log to:
      log4j.appender.dccetl.File=C\:/PROGRA~1/IBM/JazzTeamServer/server/logs/dcc_etl.log
    3. Change log4j.appender.dccetldata.File=logs/dcc_etl_data.log to:
      log4j.appender.dccetldata.File=C\:/PROGRA~1/IBM/JazzTeamServer/server/logs/dcc_etl_data.log
  12. Edit the C:\Program Files\IBM\JazzTeamServer\server\conf\rs\log4j.properties file:
    1. Change log4j.appender.R.File=logs/rs.log to:
      log4j.appender.R.File=C\:/PROGRA~1/IBM/JazzTeamServer/server/logs/rs.log
  13. Edit the C:\Program Files\IBM\JazzTeamServer\server\conf\lqe\log4j.properties file:
    1. Change log4j.appender.file.File=logs/lqe.log to:
      log4j.appender.file.File=C\:/PROGRA~1/IBM/JazzTeamServer/server/logs/lqe.log
  14. Edit the C:\Program Files\IBM\JazzTeamServer\server\conf\gc\log4j.properties file:
    1. Change log4j.appender.file.File=logs/gc.log to:
      log4j.appender.file.File=C\:/PROGRA~1/IBM/JazzTeamServer/server/logs/gc.log
Note: If you do not provide paths for the log files, the log files will be written to C:\Program Files\IBM\JazzTeamServer\server\tomcat\bin\logs.

Procedure

  1. Set the CATALINA_HOME variable by following these steps:
    1. From Windows Control Panel, open the System Properties window.
    2. Click the Advanced tab, then click Environment Variables.
    3. Under System variables, click New.
    4. In Variable name enter CATALINA_HOME and in Variable value enter C:\Program Files\IBM\JazzTeamServer\server\tomcat.
  2. Open a command prompt and check that the service is not installed by entering this command:
    cd C:\Program Files\IBM\JazzTeamServer\server\tomcat\bin
    sc query tomcat7
    If the service is installed, uninstall it by entering this command:
    sc delete tomcat7
  3. Restart your system for the CATALINA_HOME variable to take effect and to finish removing the tomcat7 service if you deleted it in the previous step.
  4. Open a command prompt and install the new service by entering this command:
    Note: On Windows operating systems that have User Account Control (UAC), the command prompt must be run as an administrator.
    cd C:\Program Files\IBM\JazzTeamServer\server\tomcat\bin
    service.bat install tomcat7
  5. Run the C:\Program Files\IBM\JazzTeamServer\server\tomcat\bin\tomcat7w.exe program to configure the service.
  6. Click the Java tab, and clear the Use default check box.
  7. Add the following path to the Java Virtual Machine. You can also click the ellipsis icon to browse for the jvm.dll file.
    C:\Program Files\IBM\JazzTeamServer\server\jre\bin\j9vm\jvm.dll
  8. Add the following lines at the end of the Java Options text field:
    Note: The path to -DJAZZ_HOME and -Dlog4j.configuration must be a URL path. Note the three forward slashes (///) after "file:" and forward slashes in the path. The path to tempDir and Oracle or SQL Server JDBC driver location must be an absolute file path.
    -DJAZZ_HOME=file:///C:/PROGRA~1/IBM/JazzTeamServer/server/conf
    -Djava.awt.headless=true 
    -Dorg.eclipse.emf.ecore.plugin.EcorePlugin.doNotLoadResourcesPlugin=true 
    -Dcom.ibm.team.repository.tempDir=C:\Program Files\IBM\JazzTeamServer\server\tomcat\temp
    -Djazz.connector.sslEnabledProtocols=TLSv1,TLSv1.1,TLSv1.2
    -Djazz.connector.algorithm=IbmX509
    -Dlog4j.configuration=file:///C:/PROGRA~1/IBM/JazzTeamServer/server/conf/startup_log4j.properties
    -Xgcpolicy:gencon
    -Xgc:preferredHeapBase=0x100000000
    -XX:MaxDirectMemorySize=1G
    -Xmx4G
    -Xms4G
    -Xmn512M
    If your Jazz Team Server is installed on a Windows platform, but you are using the DB2® for z/OS® database server, add this line substituting the path with the driver location.
    Note: The path to the driver location must be a file path and note the forward slash.
    -DDB2Z_JDBC=/etc/jazz/server/db2z
    If you are using the Oracle database, add this line substituting the path with the driver location:
    -DORACLE_JDBC_DRIVER_FILE=OJDBCLocation\ojdbc6.jar
    If you are using the SQL Server database, add this line substituting the path with the driver location:
    -DSQLSERVER_JDBC_DRIVER_FILE=SQLJDBCLocation\sqljdbc4.jar
    If you are using the Oracle Java Runtime Environment 6.0, you must also add the following lines:
    -XX:+UnlockDiagnosticVMOptions
    -XX:+UnsyncloadClass
  9. Clear the following fields if they contain any values:
    • Initial memory pool
    • Maximum memory pool
    • Thread stack size
  10. On the Startup and Shutdown tabs, make sure that jvm is selected for the Mode setting.
  11. Click the General tab and change the Startup type to Automatic to start the service automatically when Windows starts.
  12. After the service starts, verify that the server is running by logging on to the server from your browser.

video icon Watch videos

CLM playlist
Jazz.net channel
User Education channel

learn icon Learn more

CLM learning circle
Agile learning circle
Learning circles

ask icon Ask questions

Jazz.net forum
developerWorks forums

support icon Get support

Support Portal
Deployment wiki
Support blog