skurthInnovation und Technologie

Invoking IBM BPM 8.5 services by using the REST API

This article explains how to access the REST API from the Process Designer to call an IBM Business Process Manger 8.5 service. The API can be used by external systems to access some data, to edit or even to delete these (e.g. moving tokens in a process). For such a REST API call, at first we need to implement a Java class, which establishes a connection. Then the Java class is exported as a .jar file and linked by a Java Integration component to a process model. After that we can communicate with the REST API. But now everything step by step.

When we create the Java class it’s important to make sure that the Java version is not higher than 6 because the IBM Business Process Manger 8.5 is incompatible with later versions. Furthermore in the implementation, it’s necessary that the credentials are send with any request to the REST API so an authentication can take place with the server. Afterwards the individual functions of the REST API can be implemented in some methods. This is done through HTTP requests. We get the several HTTP requests from the web interface of the REST API (http://bpmserver:9080/bpmrest-ui).

Bild1

After all desired functions have been implemented the Java class can be exported as a .jar file.

Now we have to make the connection to a process model. Therefore we open a process application in the IBM Process Designer and load the created .jar file into it as a Server File.

Bild2

The next step is creating an Integration Service for an activity that contains a Java Integration component. This component must be linked to the .jar file that was being loaded into the IBM Process Designer. In the tab Definition, the method to be executed is selected and a check in the “Translate JavaBeans” is set.

Bild3

In the end we can also assign the input and output parameters in the Data Mapping.

Bild4

Attention

Data types such as String or Integer can be used easily. But there are problems when more complex structures (e.g. List) come into play.

The data mapping between Java and the IBM Business Process Manger 8.5 then no longer works smoothly. To circumvent this problem an external library from IBM (psclnt.jar) must be used to develop. We can find this library in the following directory: <BPM-Home>/BPM/Lombardi/lib

Schlagwörter: