3 - Editing the Deployment File rpm.xml

  1. Select a location on your computer and create a blank rpm.xml file.
  2. Copy the rpm.xml (created in step 1) and rpm-web-services.war files to a directory on the same computer as the Tomcat Server. The rpm-web-services.war file can be found in the rpm-web-services.ear. Extract the EAR file with an archive extractor to find the WAR file.
  3. Open the rpm.xml file with a text editor.
  4. Edit the Context docBase tag to state the location of the rpm-web-services.war file. It should be set to the directory where you copied the two files. If you are using Tomcat V5.0, change the path="/rpm" parameter only if required. It defines the actual URL that will be used to call the Web Services API (for example, http://mytomcatserver.mycompany.com:8080/rpm). If you are using Tomcat V5.5, there should not be a path attribute in the Context element.
  5. Edit jdbc/RPMDATASOURCE parameters to the actual value required by your RPM database. If you change the Resource name or the ResourceParams name, make sure they have the exact same value. This name will be used as the DSN name when calling a Web Service.
    Note: Do not remove or change the validationQuery parameter. This parameter is an SQL statement that enables Tomcat to know if a connection is still valid.
  6. Save and close the rpm.xml file.
    Note: The rpm.xml file required for V5.5 is different than the one used for V5.0, an example of this file follows the V5.0 example.

    The following is an example of the rpm.xml file for Tomcat V5.0:

    <?xml version='1.0' encoding='utf-8'?>
    <Context docBase="C:/tmpwars/rpm-web-services.war" path="/rpm" reloadable=
    "true">
        <Resource name="jdbc/RPMDATASOURCE" type="javax.sql.DataSource"/>
        <ResourceParams name="jdbc/RPMDATASOURCE">
          <parameter>
            <name>validationQuery</name>
            <value>values(1)</value>
          </parameter>
          <parameter>
            <name>maxWait</name>
            <value>5000</value>
          </parameter>
          <parameter>
            <name>maxActive</name>
            <value>4</value>
          </parameter>
          <parameter>
            <name>password</name>
            <value>database-server-password</value>
          </parameter>
          <parameter>
            <name>url</name>
            <value>jdbc:db2://database-server-url.com:50000/RPM</value>
          </parameter>
          <parameter>
            <name>driverClassName</name>
            <value>com.ibm.db2.jcc.DB2Driver</value>
          </parameter>
          <parameter>
            <name>maxIdle</name>
            <value>2</value>
          </parameter>
          <parameter>
            <name>username</name>
            <value>database-user-name</value>
          </parameter>
        </ResourceParams>
    
    	<Environment name="webServicesSecurityEnabled" type="java.lang.Boolean"
    		value="True" />
    
    	<Environment name="webServicesEnabled" type="java.lang.Boolean"
    		value="True" />
    				
    	<Environment name="webServicesUseSessionTimeout"
    		type="java.lang.String" value="true" />
    
    	<Environment name="webServicesSessionTimeoutDelayInSeconds"
    		type="java.lang.Integer" value="3600" />
    
    	<Environment name="webServicesUseApiSecurityFlagOnLogin"
    		type="java.lang.Boolean" value="True" />
    		
    	<Environment name="useLdapAuthentication" type="java.lang.Boolean"
    		value="false" />
    		
    	<Environment  name="ldapConfiguration" type="java.lang.String" value="
    		java.naming.provider.url="ldaps://tstbluepages.mkm.can.ibm.com:636"
    		java.naming.factory.initial="com.sun.jndi.ldap.LdapCtxFactory"
    		java.naming.ldap.version="3"
    		java.naming.security.protocol="simple"
    		ldapsearchcontext="o=ibm.com"
    		ldapuseridattr="email"
    		ldapuserauthdn="distinguishedName" " >
    	</Environment>
    </Context>
    

The following is an example of the rpm.xml file for Tomcat V5.5:

<?xml version='1.0' encoding='utf-8'?>
<Context docBase="c:\tmpwars\rpm-web-services-x.x.x.x.war" reloadable="true">
    	<Resource
            auth="Container"
            description=""
            name="jdbc/RPMDATASOURCE"
            type="javax.sql.DataSource"
            password="database-server-password"
            driverClassName="com.ibm.db2.jcc.DB2Driver"
            maxIdle="2"
            maxWait="5000"
            username="database-user-name"
            url="jdbc:db2://database-server-url.com:50000/RPM"
            maxActive="4"/>

	<Environment name="webServicesSecurityEnabled" type="java.lang.Boolean"
		value="True" />

	<Environment name="webServicesEnabled" type="java.lang.Boolean"
		value="True" />
				
	<Environment name="webServicesUseSessionTimeout"
		type="java.lang.String" value="true" />

	<Environment name="webServicesSessionTimeoutDelayInSeconds"
		type="java.lang.Integer" value="3600" />

	<Environment name="webServicesUseApiSecurityFlagOnLogin"
		type="java.lang.Boolean" value="True" />
		
	<Environment name="useLdapAuthentication" type="java.lang.Boolean"
		value="false" />
		
	<Environment  name="ldapConfiguration" type="java.lang.String" value="
		java.naming.provider.url="ldaps://tstbluepages.mkm.can.ibm.com:636"
		java.naming.factory.initial="com.sun.jndi.ldap.LdapCtxFactory"
		java.naming.ldap.version="3"
		java.naming.security.protocol="simple"
		ldapsearchcontext="o=ibm.com"
		ldapuseridattr="email"
		ldapuserauthdn="distinguishedName" " >
	</Environment>
</Context>