Skip to end of metadata
Go to start of metadata

A significant amount of functionality in the Identity Manager lies in its service layer. Processes that you may develop will likely need to interact with the services within the Identity Manager or external services. The following section describes how to configure and the web service client in the process engine.

Dependency JAR Files

Most service operations in OpenIAM return a Response object or a subclass of the Response object. These objects are defined in the OpenIAM interface jar files.

  • openiam-pojo-intf-2.1.0.jar
  • openiam-idm-intf-2.1.0.jar
  • openiam-connector-intf-2.1.0.jar

These three jars files need to be added as dependencies into the process that you are developing. Dependencies may be added by:

  • Select the process
  • Select the "General"  tab from the configuration panel at the bottom of the screen
  • Select "Dependencies"
  • Select My Lib and then click on the Add Jar button.
  • Select the jars and click on Ok.

Define Process Variables

Once the dependencies JAR files have been defined, You need to create process variable. In this example, we will define a process variable called loginResponse that will capture the response from a service operation.  To define a process variable, follow the steps described below:

  • Select the Process
  • Select the "Data" tab found under the "General" tab in the configuration panel at the bottom of the process designer.
  • Click on "Add"
  • On the screen below, enter the following:

    Field Name

    Description

    Name

    Name of the variable

    Data Type

    Type of the variable. If its a complex object, select "Java Object". Otherwise you can select a primitive type

  • Click on "Browse". 
  • From the screen below, select the Class for this variable. In this case, it will be org.openiam.base,ws.Response

Implementing A Webservice Call

Use the steps below to call a web service operation using the webservice client in the process engine

  • Create a task. The task type should be classified as "Service" or "Automatic"
  • Click on the "Connectors" tab
  • Select "Web Services Client" from the list of connectors
  • Give the service client a name, as shown below.
  • Click on Next

  • Enter the service parameters. In this case, we are calling an operation called isLoginExists on the LoginDataService.

    Parameter Name

    Description

    Target NS

    Service Namespace: urn:idm.openiam.org/srvc/auth/service

    Service name

    Web service name: LoginDataWebService

    Port Name

    Web service port: LoginDataWebServicePort

    Request

    Soap Request to send to the service

    Service Endpoint

    http://localhost:8080/openiam-idm-esb/idmsrvc/LoginDataWebService

    Binding

    http://schemas.xmlsoap.org/wsdl/soap/http

     

     

  • Click on Next and map the response from the operation to the process variable that you defined earlier
  • Under "Connector Output" select "Edit Expression" from the drop down.
  • Enter the script shown in the expression editor
  • Click on Ok
  • Under "Destination Variable" select the process variable that you created earlier - loginResponse

When this activity runs, the result of the call to service operation will be stored in the loginResponse process variable.

Labels: