Making Changes to the Service Interface

When a process exposes a web service operation, a WSDL defines the service interface to that operation. Once the application containing the process has been deployed to the BPM runtime, it can only be subsequently upgraded if its service interface (defined by the WSDLs used to expose its services) has not changed.

See "Upgrading a Deployed Application" in the TIBCO ActiveMatrix BPM Deployment Guide for information on how to upgrade an application.

Note: The WSDL validation tool for upgrade only checks the data involved in an interface previously exposed via WSDL operations. It does not include data types referenced via process data that is not involved in the process API.

Process As A Service (PAAS) interfaces can be defined in one of two ways:

  • Using a customer-supplied WSDL and mapping from the WSDL to the process. This is known as the Contract First approach.
  • Generating a WSDL from the process definition. This is known as Contract Last approach.

For both approaches, see Exposing a Service.

Best practice for SOA and software development states that Interface should be separated from Implementation. Given the current functionality of TIBCO Business Studio and of the ActiveMatrix BPM runtime, the Contract First approach better engenders the separation of Interface from Implementation. Currently the generated WSDL (the Contract Last approach) can more tightly bind the Interface and Implementation unless the process developer is thinking about how the WSDL is generated from the process.