IBM Support

Migrating 7.1.x ClearCase CM API applications to 8.0

Question & Answer


Question

Do existing ClearCase CM API applications need to be modified to run in ClearCase 8.0?

Answer

Most existing CM API applications will require minor changes in order to run in ClearCase 8.0. There are three primary areas of incompatibility in CM API between the 7.1.x and 8.0 releases:

  • Java version - 8.0 CM API requires Java 6
  • Changes in provider (session) behavior
  • Changes in ClearCase resource selector formats

Java version: CM API 8.0 requires Java 6

The 7.1.x CM API release required Java 5. In 8.0, CM API has both compile-time and run-time dependencies on Java 6. Therefore, you need to upgrade your Java development environment and runtime environment to Java 6.

Changes in Provider (Session) Behavior

In 7.1.x, the CM Server was unified – a single server supported both ClearCase and ClearQuest requests. Likewise on the client side, a single provider instance (javax.wvcm.Provider, StpProvider, etc.) supported both ClearCase and ClearQuest operations in a single session.

In 8.0, there are separate ClearCase and ClearQuest servers - the CCRC WAN server and the ClearQuest WAN server. Likewise, the client-side providers are split too. CM API application developers will need to make minor changes to their provider handling code.

Identify the place(s) in your code where you instantiate provider(s), e.g.:
    ProviderFactory.createProvider(<provider-class-name>)

Replace the existing provider class name with one of
    CcProvider.NETWORK_PROVIDER (to work with web views)
or
    CcProvider.LOCAL_PROVIDER (to work with dynamic views)

Changes in ClearCase resource selector formats

In 7.1.x, CM API introduced new selector formats for ClearCase and ClearQuest resources. In 8.0, CM API has gone back to the traditional ClearCase selector formats, that is,, the formats accepted by the cleartool command-line utility and other native ClearCase applications. CM API applications that explicitly create or parse selector strings must be changed.

Note: ClearQuest selector formats are unchanged in 8.0.

Look for code in your CM API application that creates or parses ClearCase resource selectors directly as strings:
  • Instances of Location and StpLocation
  • Calls to StpProvider.stpLocation(String)
  • Extensive use of StpLocation parsing or composing methods

In 8.0 CM API, use “traditional” ClearCase selector formats, such as:
    activity:MyUcmActivity@/vobs/my_project_vob
    dbid:1522470@/vobs/atria

[{"Product":{"code":"SSSH27","label":"Rational ClearCase"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"CM API","Platform":[{"code":"PF002","label":"AIX"},{"code":"PF010","label":"HP-UX"},{"code":"PF016","label":"Linux"},{"code":"PF027","label":"Solaris"},{"code":"PF033","label":"Windows"}],"Version":"8.0","Edition":"All Editions","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
01 August 2018

UID

swg21566478