Creating an inbound web service

Create an inbound web service to provide a way for an external system or application to call into IBM® Business Process Manager.

About this task

Now you need to provide a way for an external system or application to call into IBM Business Process Manager. The recommended method for accomplishing this is to create and publish a web service so that external applications can initiate a particular IBM BPM service or set of services. By invoking a SOAP call, external applications can call the web service.

Tip: The endpoint address for a web service is in the following format: http://host_name:port/[custom_prefix/]teamworks/webservices/process_app_name/[snapshot_name/]web_service_name.tws. If you do not specify the snapshot_name in the endpoint URL, it points to the tip snapshot for Process Center, or to the default snapshot for Process Server. If you want to invoke a web service for a specific snapshot, make sure to specify the snapshot_name in the endpoint URL.

Procedure

  1. Select the plus sign next to the Implementation category and then select Web Service from the list.
  2. In New Web Service, type KickTheBPD in the Name field and then click the Finish button.
  3. In the Operations section, click the Add button and select the Inbound WS Handler Integration service that you created in the preceding procedure from the list.
  4. In the Operation Detail section, change Untitled in the Operation Name field to doKick or something similar.
  5. Notice the WSDL URI in the Behavior section. You can use this URI to test the sample integration as instructed in Testing the integration.

    The Protected check box adds user name and password security to an operation in the web service. For a web service client to invoke a protected operation, the user ID and password added to the user name and password elements for this operation must be registered at the server, assigned to the process application and have at least read authority. Note that this is not authentication in the context of an HTTP transaction, so selecting Protected does not display a default user ID and password.

    The Target namespace scheme drop-down list provides options for setting the target namespace:
    • Per Process App/Toolkit settings (default): Uses the namespace from the Advanced XML Settings section of the Process App Settings page and does not include the snapshot name. This is the recommended setting as the target namespace will remain consistent when using multiple snapshots. Note that the namespace must be already set at the time of this selection or Per snapshot name will be used. You will not be able to modify or update this value.
    • Per snapshot name: Includes the snapshot name as well as the namespace from the Advanced XML Settings section of the Process App Settings page, if set. This scheme was used to define the target namespace before IBM BPM 8.0.1. The target namespace value in your web service client will be different each time a snapshot is taken. You will not be able to modify or update this value.
    • Custom: Lets you create your own target namespace in the Target namespace field.
    Important: If you select Per snapshot name, the namespace of the Web Services Description Language (WSDL) file will be changed in the following cases. You must generate the types again for your inbound web service so that your namespace is consistent with the namespace on the server.
    • The inbound web service uses a business object defined in the System Data toolkit. The namespace of that business object uses a host name and port specification. You must generate the types again if the inbound web service's host name and port are changed because of this situation.
    • The Target namespace schema field is changed to the Per snapshot name value. The namespace of the WSDL file will use the snapshot name once you select this option. You must generate the types again for your inbound web service each time you create a snapshot.
    • The Target namespace schema field is changed to the Per snapshot name value. The namespace of the WSDL file will use the snapshot name once you select this option. You must generate the types again for your inbound web service each time you switch the snapshot to the default or the non-default version.
      Note: In this situation, if the inbound web service is defined in the toolkit, the namespace of this WSDL file will not be changed when you switch the snapshot to the default or the non-default version.
       
  6. Save your work.

What to do next

If you do not specify a snapshot name in the URI, the default track is used to locate your web service. The tip in the default track is assumed to contain the process application with your web service. However, if you have your web service on a tip in a non-default track, it cannot be found. Therefore, create a snapshot name or make the track that you are working with the default track.