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
- Select the plus sign next to the Implementation category
and then select Web Service from the list.
- In New Web Service, type KickTheBPD in
the Name field and then click the Finish button.
- 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.
- In the Operation Detail section, change Untitled in
the Operation Name field to doKick or something similar.
- 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.
- 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.