RegisterLog In to Jazz.net dW

TN0039: Configuring Rational Team Concert, Rational Quality Manager, and Rational Requirements Composer for the Collaborative ALM integration

Summary

This Tech Tip provides detailed instructions for establishing cross-server communication and project area links between IBM Rational Team Concert (RTC), IBM Rational Quality Manager (RQM), and IBM Rational Requirements Composer (RRC) to support the Collaborative ALM (CLM) integration scenarios. The configuration supports linking one project area from each server to one project area from the other two servers.

More Information

Preconditions

To be able to successfully integrate IBM Rational Team Concert (RTC), IBM Rational Quality Manager (RQM), and IBM Rational Requirements Composer (RRC) we assume that:

  • You have downloaded, installed, and configured the server for RTC, RQM, and RRC. RTC must be version 3.0 or 2.0.0.2, RQM must be version 2.0.1 or 2.0.0.1, and RRC must be version 2.0.0.3 or 2.0.0.2. Also make sure that each application has the latest iFix installed. Note: Information for newer builds (3.0.1 and 4.0) is available in the CLM documentation.
  • You are running the servers on machines with different host names or IP addresses.
  • You have repository administrator permissions ("JazzAdmins") on RQM, RTC, and RRC to configure the cross server communication settings.
  • You have the following access licenses to be able to create and modify a project area:
    • RQM - Quality Manager
    • RTC - Developer
    • RRC - Author or Administrator

Server Setup

In this article we use 'host-name' as a placeholder for the server roots of the RTC, RRC, and RQM server.

  • 'host-name' can be either a host name (e.g. mycomputer.mydomain.com) or an IP address.
  • If available, use a hostname. If your machine has no publicly known hostname, you can also use the IP address.
  • The chosen address or hostname must be visible and accessible to all clients and the collaborating server. You cannot use localhost or hostnames only known inside local networks.
  • It is important to use a single, consistent way of addressing a server: All clients and collaborating servers must only use that address. Do not use other aliases besides the chosen address.
  • Only access the Web UI with the chosen hostname, never an alias, especially when doing the configuration steps described below.

To configure the server root, do the following:

  1. Open the server administration interface as a member of the JazzAdmins group: Open a browser and log in to the Admin Web UI on the Jazz Team Server.
    • For RRC, RQM and RTC 2.x, the URL for the Admin Web UI typically is https://host-name:9443/jazz/admin
    • For RTC 3.0 it typically is https://host-name:9443/ccm/admin.
  2. In the Server > Configuration pane (RTC 3.0: Application > Configuration) , click Advanced Properties.
  3. Search for Public URI Root.
  4. In the containing section, click Edit.
  5. In the Public URI Root property at the Current Value field, enter the URL that can be used to access the Jazz Team Server that you are logged on to. Be sure to specify the URI root that contains the hostname or IP address that you want clients to use. The typical format is https://host-name:port/jazz/, respective https://host-name:port/ccm/, and the default port number is 9443.

  6. Repeat this procedure on each Jazz Team Server that you want to access through the CLM integrations.
  7. Verify that the root service document can be accessed and is valid:
    1. Open the root services document URL in a browser. For RQM and RTC 2.x the typical format is https://host-name:9443/jazz/rootservices, for a RRC server, it is https://host-name:9443/rdm/rootservices and for a RTC 3.0 server it is https://host-name:9443/ccm/rootservices.
    2. Verify that the XML document opens, and that the first line in the document matches the root services document URL:
      <rdf:Description rdf:about="https://host-name:9443/jazz/rootservices">
    3. If the URL in the rdf:about attribute does not correspond to the address that you want to use for your server, configure the host name of your server as described above.
    4. Perform the same steps on each Jazz Team Server that you want to access through the CLM integrations.

Cross Server Communication Configuration

For Jazz products to interact with each other, each server must add the other server to its list of friends. You do this by configuring cross-server communication. Before you do this, remove any server friend entries and keys that might remain from previous configurations. If you or someone else has worked with the cross communication set up, it is possible that previous attempts were made that may or may not have been successful. To ensure a clean start, it is best to remove existing server friend entries. Attention: RRC has an internal friend named "Rational Requirements Server" which should not be removed. RTC 3.0 has an internal friend named "Jazz Team Server" which also must not be removed.

To find and remove existing friends and keys:

  1. Open the server administration interface as a member of the JazzAdmins group:
    • Open a browser and log in to the Admin Web UI on the Jazz Team Server. Typically, the URL for the Admin Web UI is https://host-name:9443/jazz/admin (RTC 3.0: https://host-name:9443/ccm/admin). In the Admin Web UI, click the Server tab. (RTC 3.0: Application)
  2. In the Configuration pane, click Cross-Server Communication (RTC 3.0: Friends (Outbound)).
  3. On the page, scroll to the Server Friends List section and verify that it does not contain any friends from previous installations. If such friends exist, delete them by clicking the Delete Friend icon. It is important to not remove the internal friends mentioned above.

    The following table shows some sample entries to the Server Friends List:

    Table 1.
    Title Root Services URI OAuth Consumer Key
    My Team Concert Server https://rtc.mass.ibm.com:9443/jazz/rootservices 1cff4f920e4c429981d33600f35cfd1a X
    My Requirements Server https://rrc.mass.ibm.com:9443/rdm/rootservices 5jght786hdjmj729ki56m8947nedg5rf X
    My Test Server https://rqm.mass.ibm.com:9443/jazz/rootservice 67890yjnhfyeudjsnf5092kjqrtdnm56 X
  4. In the Configuration pane, click OAuth Consumer Management (RTC 3.0: Consumers (Inbound)) . In the Authorized Keys section, delete keys existing from previous installation by clicking the Delete Consumer Key icon. Do not remove the internal keys such as Jazz Team Server or net.jazz.ajax.theme
  5. Click Save to save your changes. Repeat this procedure for the other Jazz Team Servers.

Now we can establish the server-to-server communication:

Establishing cross-server communication - RTC 3.0

  1. Open a browser and open the Admin Web UI of the Jazz Team Server. Typically, the URL for the Admin Web UI is https://host-name:9443/ccm/admin
  2. Log in to the Admin Web UI as a member of the JazzAdmins group
  3. Click the Application tab. In the Configuration pane, click Friends (Outbound).
  4. Add RQM as a friend.
    1. Press the Add.. button in the friends list header. The Add Friend dialog opens.
    2. In the Name field, enter a title to identify a RQM server, for example My Test Server.
    3. In the Root Services URI field, enter the URI for the Jazz root services of the RQM server that you want to add as a friend. Use the form https://friend-server:9443/jazz/rootservices, for example, https://rqm.cn.ibm.com:9443/jazz/rootservices.
    4. In the OAuth Secret and Re-type Secret fields, type an OAuth secret code phrase to associate with the new OAuth consumer key.
    5. Check the Trusted check box if it is not already selected.
    6. Click Next.

      If you have administrator permissions on the target server, follow the Grant access for the provisional key link that is provided at the end of this procedure to navigate to OAuth Consumer Management on the target server and approve the access request; otherwise, work with a member of the administrator group on the target server to get approval for provisional OAuth consumer keys.

    7. Click Finish.
      A provisional OAuth consumer key is added to the list on this page, and a request for access approval is sent to the other Jazz Team Server. A new entry is added to the Server Friends List.
  5. Add RRC as a friend.
    1. Press the Add.. button in the friends list header. The Add Friend dialog opens.
    2. In the Title field, enter a title to identify a RRC server, for example My Requirements Server.
    3. In the Root Services URI field, enter the URI for the Jazz root services of the RRC server that you want to add as a friend. Use the form https://friend-server:9443/rdm/rootservices, for example, https://rrc.nc.ibm.com:9443/rdm/rootservices.
    4. Repeat the remaining steps as in the RQM setup.

Establishing cross-server communication - RTC 2.x

  1. Log in to the Admin Web UI as a member of the JazzAdmins group and click the Server tab.
  2. In the Configuration pane, click Cross-Server Communication.
  3. Add RQM as a friend.
    1. In the Title field, enter a title to identify a RQM server, for example My Test Server.
    2. In the Root Services URI field, enter the URI for the Jazz root services of the RQM server that you want to add as a friend. Use the form https://friend-server:9443/jazz/rootservices, for example, https://rqm.cn.ibm.com:9443/jazz/rootservices.
    3. In the OAuth Secret and Re-type Secret fields, type an OAuth secret code phrase to associate with the new OAuth consumer key.
    4. Check the Trusted check box if it is not already selected.

    5. Click Request Access.

      A provisional OAuth consumer key is added to the list on this page, and a request for access approval is sent to the other Jazz Team Server. A new entry is added to the Server Friends List.
  4. Add RRC as a friend.
    1. In the Title field, enter a title to identify a RRC server, for example My Requirements Server.
    2. In the Root Services URI field, enter the URI for the Jazz root services of the RRC server that you want to add as a friend. Use the form https://friend-server:9443/rdm/rootservices, for example, https://rrc.nc.ibm.com:9443/rdm/rootservices.
    3. Repeat steps 3c, d, and e.

What to do next

If you have administrator permissions on the target server, follow the Grant access for the provisional key link that is provided at the end of this procedure to navigate to OAuth Consumer Management on the target server and approve the access request; otherwise, work with a member of the administrator group on the target server to get approval for provisional OAuth consumer keys.

After you approve the access request, repeat this procedure for the other Jazz Team Server or servers so that they can access this Jazz Team Server.

Establishing cross-server communication - RQM

  1. Log in to the Admin Web UI as a member of the JazzAdmins group and click the Server tab.
  2. In the Configuration pane, click Cross-Server Communication.
  3. Add RTC as a friend.
    1. In the Title field, enter a title to identify a RTC server, for example My Team Concert Server.
    2. In the Root Services URI field, enter the URI for the Jazz root services of the RTC server that you want to add as a friend. Use the form https://friend-server:9443/jazz/rootservices for RTC 2.0.0.2 resp. https://friend-server:9443/ccm/rootservices for RTC 3.0.
    3. In the OAuth Secret and Re-type Secret fields, type an OAuth secret code phrase to associate with the new OAuth consumer key.
    4. Check the Trusted check box if it is not already selected.
    5. Click Request Access.

      A provisional OAuth consumer key is added to the list on this page, and a request for access approval is sent to the other Jazz Team Server. A new entry is added to the Server Friends List.
  4. Add RRC as a friend.
    1. In the Title field, enter a title to identify a RRC server, for example My Requirements Server.
    2. In the Root Services URI field, enter the URI for the Jazz root services of the RRC server that you want to add as a friend. Use the form https://friend-server:9443/rdm/rootservices, for example, https://rrc.nc.ibm.com:9443/rdm/rootservices.
    3. Repeat steps 3c, d, and e.

Establishing cross-server communication - RRC

  1. Log in to the Admin Web UI as a member of the JazzAdmins group and click the Server tab.
  2. In the Configuration pane, click Cross-Server Communication.
  3. Add RTC as a friend.
    1. In the Title field, enter a title to identify a RTC server, for example My Team Concert Server.
    2. In the Root Services URI field, enter the URI for the Jazz root services of the RTC server that you want to add as a friend. Use the form https://friend-server:9443/jazz/rootservices for RTC 2.0.0.2 resp. https://friend-server:9443/ccm/rootservices for RTC 3.0.
    3. In the OAuth Secret and Re-type Secret fields, type an OAuth secret code phrase to associate with the new OAuth consumer key.
    4. Check the Trusted check box if it is not already selected.
    5. Click Request Access.

      A provisional OAuth consumer key is added to the list on this page, and a request for access approval is sent to the other Jazz Team Server. A new entry is added to the Server Friends List.
  4. Add RQM as a friend.
    1. In the Title field, enter a title to identify a RQM server, for example My Test Server.
    2. In the Root Services URI field, enter the URI for the Jazz root services of the RQM server that you want to add as a friend. Use the form https://friend-server:9443/jazz/rootservices, for example, https://rqm.cn.ibm.com:9443/jazz/rootservices.
    3. Repeat steps 3c, d, and e.

Approving Access Requests

To approve a consumer key requested by another server:

  1. Open the server administration interface as a member of the JazzAdmins group:
    • Open a browser and log in to the Admin Web UI on the Jazz Team Server. Typically, the URL for the Admin Web UI is https://host-name:9443/jazz/admin (RTC 3.0: https://host-name:9443/ccm/admin). In the Admin Web UI, click the Server (RTC 3.0: Application) tab.
  2. In the Configuration pane, click OAuth Consumer Management (RTC 3.0: Consumers (Imbound)).
  3. On the OAuth Consumer Management page, view the Provisional Keys section for new requests.
  4. To identify the server that uses the consumer key, update the Consumer Name field with the name of the Jazz Team Server that is requesting access to this server, for example, https://rtc.mass.ibm.com:9443/jazz.
  5. Optional: If the consumer shares authorization with other trusted consumers, select the Trusted check box.
  6. At the Authorized field, change the Pending value to Approve.

  7. Click Save. The key is included in the Authorized Keys section of the page. The requesting Jazz Team Server can now use the key to communicate with this server.
  8. Optional: To verify that cross server communication is correctly configured, type the following URL on each Jazz Team Server:
    https://host-name:9443/jazz/friends
    <jd:Friend>
     <dc:title>https://host-name:9443/jazz</dc:title>
     <jd:rootServices rdf:resource="https://host-name:9443/jazz/rootservices"/>
    </jd:Friend>
    <jd:Friend>
    
     <dc:title>https://host-name:9443/rdm</dc:title>
     <jd:rootServices rdf:resource="https://host-name:9443/rdm/rootservices"/>
    </jd:Friend>

Project Area Linking

Use the Jazz project administration interface to create links between project areas for CLM integrations on participating Jazz Team Servers. This association of project areas enables users to create links from artifacts, such as test cases, requirements, and work items, in one project area to artifacts in another project area.

  1. Open the server administration interface as a member of the JazzAdmins group:
    • Open a browser and log in to the Admin Web UI on the Jazz Team Server. In the Admin Web UI, click the Project Areas tab.
  2. Select a project area from the Active Project Areas list.
  3. On the project overview page, scroll to the Links (RTC 3.0: Associations) section and click Add.
  4. In the Server (RTC 3.0: Application) drop-down list, select a target Jazz Team Server that you identified when establishing cross-server communication. You are prompted to log in to the target server.
  5. Log in to the target Jazz Team Server as a member of the JazzAdmins group. When asked whether you will allow the two servers to collaborate, click Yes. An entry for the target server project area appears in the Service Providers (RTC 3.0: Association) field of the Add Link window. Select the service provider entry and click Finish.

    Screenshot of the Add Link dialog

Troubleshooting Links Between Project Areas

If adding links is failing, check the following symptoms and solutions:

Symptom Explanation Solution
Problem Fetching Remote Data: Unable to load URL, Status: 200 This probably means the root services URL to the remote server is incorrect
  1. Remove the entry in the cross server communication page.
  2. Add a new one with the correct URL.
  3. Reboot the server.
Problem Fetching Remote Data: Unable to load URL, Status: 403 This probably means the OAuth authorization pop-up window is being blocked
  1. Check the blocker setting for current web site.
  2. Disable the blocker.
Access forbidden. Status: 403 The cross server configuration was performed with an invalid hostname.
  1. Perform the cross server configuration again and make sure to access the Admin pages using the hostname chosen and configured in the Server Setup section. Do not use hostname aliases.
Problem Fetching Remote Data: Unable to load URL, Status: 500
The consumer key is invalid.
This could happen when the friends list contains same server twice.
  1. Double check whether there are duplicated entries in the friend configuration.
  2. Remove the invalid one.
  3. Reboot the server.
Problem Fetching Remote Data: Unable to load URL, Status: 500
The time stamp in the cross server request is refused.
This could happen when the date/time setting in the two servers are largely different. The Jazz server checks whether the setting is between an allowed scope or it will refuse the cross server request.
  1. Double check whether the time setting is within the allowed difference, 10 minutes is the scope.
  2. Correct the setting and reset up the linking.
Problem Fetching Remote Data: Unable to load URL, Status: 500
The alias name is being used instead of the public URI.
This could happen when there is alias name defined for your machine. Follow the instructions in the Server Setup section to verify that the root service document can be correctly accessed and contains correct the server URLs. Always use the URI with the host name to access the web UI.

In case of a Status 500 error, you can get more information by:

  1. Select the URL in the error message and copy it to the clipboard.
  2. Paste the URL to a new browser to see more details on the error message.

Feedback
Was this information helpful? Yes No 8 people rated this as helpful.