DOORS/ DWA providing and consuming OSLC services to/from RTC
DOORS/DWA Providing OSLC RM 1.0
Pre requisites for DOORS/DWA providing OSLC services
- IBM Rational DOORS server/client is installed
- IBM Rational DOORS Web Access is installed and configured to provide OSLC services
Configuring DWA to provide OSLC services
In order to configure DWA to provide OSLC services, Rational DOORS server is installed and is up and running.
Find the URN for the DOORS Repository
1. Start the Rational DOORS client pointing to the running DOORS server.
2. In both the User ID and Password fields, type Administrator.
3. Click Tools > Edit DXL.
4. Type print getDatabaseIdentifier() and click Run
Figure 1: Getting database identifier for DOORS database
5. Copy the DXL output (you will need this later).
Configuring FESTIVAL.XML file
1. Go to the DOORS WEB ACCESS INSTALLATION PATH\\server\festival\config directory
2. Open the festival.xml file.
3. Modify the repository URN (using the value that you copied earlier).
<!-- The repositoryUrn must be replaced with your database unique identifier. -->
<!-- An example repository urn is: urn:rational:ers-46dd5d7806b96973: -->
<!-- Note the trailing colon ':' after the 16 digit id. -->
<!-- Please see the documentation describing how to obtain the correct value. -->
<f:repository-mapping enabled="true" endpoint="RMSERVICES" name="DOORS ERS Repository" repositoryUrn="urn:rational:ers-4e6ee5a0743253aa:"/>
Replace localhost with the IP address of the Rational DOORS license server.
Replace “false” with “true” in display.redirector.urls.
Replace MYHOSTNAME with FullyQualified Hostname of the machine where Rational DOORS Web Access Server is running.
Replace “false” to “true” in ForceHttpsForAuthenticationForoauth only for secure connections.
Replace oauth.domain value to “https://FullyQualifiedHostnameofDWAserver:PortNo/dwa”
Where default PortNo is 8080 for non secure and 8443 for secure connections
Note:- If you are configuring for secure connections, replace all 8080 port numbers with your secure port numbers i.e. 8443
Figure 3:- Configuring festival.xml for secure and non –secure connections for DWA
<!-- Configurable system properties -->
<f:property name="interop.version" value="126.96.36.199"/>
<f:property name="licence.server.location" value="firstname.lastname@example.org"/>
<f:property name="display.redirector.urls" value="true"/>
<f:property name="published.url.prefix" value="https://rdsw2k3s-195.in.ibm.com:8443/doors/redirector/"/>
<f:property name="ForceHttpsForAuthenticationForOAuth" value="true"/>
<f:property name="oauth.domain" value="https://rdsw2k3s-195.in.ibm.com:8443/dwa"/>
Note: - If DWA is configured for secure connection in festival.xml file, a connector port and Certificate is required.
1. Go to DOORS WEB ACCESS INSTALLATION PATH\server folder.
2. Create a folder called “ssl”.
3. Generate Self Signed Certificate for the machine where DOORS Web Access server is running
Open Command prompt
Go to DOORS WEB ACCESS INSTALLATION PATH\win32\ibm-java2-i386-50\jre\bin
Replace values as required and run the commands below. Password is ibm-team and the alias to be name of the machine where tomcat is running without the domain details.
keytool -genkey -keyalg RSA -keysize 1024 –dname "CN=<FullyQualifiedHostname>, OU=DWA, O=IBM, L=bangalore, C=IN" -validity 365 -storepass ibm-team -keystore DOORS WEB ACCESS INSTALLATION PATH\server\ssl\ibm-team-ssl.keystore -keypass ibm-team -alias <Hostname>
keytool -selfcert -dname "CN==<FullyQualifiedHostname>, OU=DWA, O=IBM, L=bangalore, C=IN" -validity 365 -storepass ibm-team -keystore DOORS WEB ACCESS INSTALLATION PATH\server\ssl\ibm-team-ssl.keystore -alias <Hostname>
4. Go to DOORS WEB ACCESS INSTALLATION PATH\server\conf folder
5. Open server.xml file
Amend the following changes in “Define a SSL HTTP/1.1 Connector on port 8443”
keystoreFile="DOORS Web Access Installation path\server\ssl\ibm-team-ssl.keystore"
6. Save and close the file
Note: - Please make sure that KeystoreFile location matches with location of certificate
Configuring doorsRedirector.properties file
1. Go to DOORS WEB ACCESS INSTALLATION PATH\\server\festival\config folder.
2. Open doorsRedirector.properties file.
3. Replace "MY_DWA_HOSTNAME" in the file with the fully Qualified Hostname of DWA server.
Figure 4:- Configure redirector properties
<comment>Configuration written: Tue Sep 13 11:40:23 GMT+05:30 2011</comment>
4. Replace "MY_DOORS_DATABASE_HOSTNAME" in the file with the fully Qualified Hostname of DOORS database server and change port 8080 to 8443 if you are configuring secure connection, else leave as it is.
5. Save and close the file.
Enable Data Change Notifications and Redirector URL’s
1. Open a command prompt.
2. Change the current directory to C:\Program Files\IBM\Rational\DOORS\9.3\bin
3. Type the following command:
dbadmin –dcnEnable-d 36677@<DOORSserver> –dcnBrokerUri “tcp://<DWABrokerHostname>:61616” –dcnChannelName “dcn” -dwaHost <DWAServerHostname> -dwaPort <DWAPortnumber> -dwaProtocol <http/https>
Start the Servers
1. Restart the Rational DOORS database server by typing services.msc in the command prompt.
2. Start the DWA Tomcat server by running the server.startup.bat file, which is in the Server folder in the following director DOORS WEB ACCESS INSTALLATION PATH\
3. Start the Broker server by running the broker.start.bat file, which is in the following directory: DOORS WEB ACCESS INSTALLATION PATH\
4. Start the Interop server by
Amend the shortcut file with the following text:
-interop -data portnumber@ FullyQualifiedhostnameofDOORSserver -brokerHost HostName -brokerPort Portnumber
-interop -data email@example.com -brokerHost windwa.dev.ratlcore.ibm.com -brokerPort 61616
Or go to C:\Program Files\IBM\Rational\DOORS\9.3\bin and type the following command
doors.exe -interop -data portnumber@ FullyQualifiedhostnameofDOORSserver -brokerHost HostName -brokerPort Portnumber
5. Open a browser.
6. Enter the following URL:
- Secure connection: https://FullyQUalifiedHostnameoFDWAserver:8443/dwa
- Non Secure connection: http://FullyQualifiedHostnameofDWAsever:8080/dwa
User Credentials are: Administrator/Administrator
Configuring RTC (CM) to Consume OSLC services provided by DWA
Register DOORS Web Access as a Friend
1. Login to CM Jazz admin server page
2. Under Communication, Select Friends (Outbound)
Figure 5: - Selecting Friends Outbound and add DWA as a friend server in RTC
3. Select Add and Enter the following details:
Name : <DWA>
Root Services URI:
Note:- For DWA 1.4 and 188.8.131.52 the root services URL would be
OAuth Secret: <xyz>
Re-Type Secret: <xyz>
Figure 6:- Adding DWA as friend server in RTC
4. Select <Next> and Register DWA as Friend.
Note:-This may fail unless https DWA has been launched and user logged in at least once.
If your application needs Consumer key and secret to add DWA as a friend server you need to do the following
Open Rational DOORS client pointing to DOORS server
Right click Database Properties
Go to Local Keys tab and fill the details as required
Figure 7:- Adding application to get Consumer key and Secret
5. Go to Project Area section inside RTC
6. Create a project or select any available project to link DOORS service provider catalogue or sub catalogue
7. Under Associations, select Add.
Figure 8:- Selecting Add Associations in RTC Project Configuration
8. From Application dropdown select the registered DWA service provider.
9. From Association dropdown box select the Provides- ChangeManagement(Requirements).
Figure 9: - Associating DOORS project with RTC
10. Save the project
Configuring DOORS and DOORS Web Access to Consume OSLC CM
Register Consumer on CM Jazz Server1. Login to CM jazz admin server using valid admin credentials
Figure 10: - Register DOORS as consumer in RTC
2. Go to 'Application' tab, under ‘Communication’ select 'Consumers (Inbound)'
3. Under 'Register Consumer', complete the fields and generate an authorized OAuth consumer key
Note: User can generate a consumer key of his choice by selecting ‘Click here to pick the consumer key instead.’
4. Remember the consumer key generated and OAuth Secret code.
Figure 11: - Adding User defined consumer key and secret
5. Consumer key is generated as shown.
Figure 12: - Consumer key is generated
1. Log in to DOORS desktop as ‘Administrator’.
2. Go to "Database Properties"
3. Go to the "Cross-Server Communication" tab.
Figure 13: - Register RTC server in DOORS for cross server communication
4. In the 'Server List' pane, select <Add> and complete all fields using the Consumer Key and OAuth Secret specified earlier on the Jazz server side.
<Root Services URL>:- https://fullyqualifiedhostnameofRTCserver:9443/ccm/rootservices
<Consumer Key>:- Register key on Jazz Admin server page
<Oauth Secret>:- Registered consumer secret on jazz admin server page
5. Click <Register> - CM or QM server should now be added to the list.
6. In the 'Collaboration Links' pane, select <Add>.
7. Select the newly added server from the dropdown list, complete OAuth login if necessary, then browse to the target CM or QM project.
8. Click <Add> to complete the collaboration link.
9. Click <OK> in Database Properties
Enable logging in DWA
Any issues faced while configuring DWA can be debugged by enabling logging in dwa.
Go to /server/festival/config/ and rename the festival-log4j.xml file to festival-log4j.xml.orig and then rename festival-log4j.xml.support to festival-log4j.xml
Restart DWA server, a logs folder will be created where u can see the exception log, base log, response log and request log etc.
Usual Pit Falls:-
If both the servers DOORS and DWA are running in the same machine, usually there wont be any issues as the communication between them will happen seamlessly, however if both are running in different machines there will be communication issues between two servers, like
1. HTTP status 302 error (while adding RTC/DWA as friend server):- This error is usually seen due to DNS and Hostname of the machines.This can be resolved by mapping the ip address with the hostname in /drivers/etc/host file
2. HTTP status 400 error:- This error is usually seen if RTC server clock(time) and DOORS/DWA clock(time) have a clock time difference of more than 5minutes.It is suggested to synchronize both the clocks to a common server time( This can be done by <adjust date and time> Internet time> and synchronize it to common server).
3. HTTP status 500 error:- This error is usually seen if consumer key and consumer secret that are registered are wrongly updated while adding as a friend server