Web Service Promotion

A web service call can be executed using a web service action. This requires a registered web service in the "Integration" module. You can find out how to configure a web service there here.

You can find the Web Service action in Processes under "Elements. " From there, it can be dragged and dropped into the desired location in the process chain and configured. General information on creating process elements can be found here.

Once you have created the web service action on the workspace, double-click the element to open the Properties dialog box.

General

You can find all the information about the settings in this dialog box here.

Web Services

The name of the web service call and the path within the WSDL structure are displayed here.

Configure Web Service

Opens a dialog box where a web service can be registered.

Add a Web Service Call

Opens a dialog box where you can select a web service call.

Select a Web Service Call

If web services from other Intrexx portals are accessed, a login is required if the portal being accessed is linked to

Only then can the actual web service operation be called. Finally, you must use the logout operation to ensure that the session is terminated correctly.

Select the desired call and click "OK."

Delete Web Service Call

Deletes the currently selected call.

Edit

Opens the dialog for selecting the web service call, which displays the structure of the web service. You'll also see an additional "Configuration" tab.

Increase / Decrease Priority

Here, you can change the priority if multiple calls are listed. Several web services are executed one after another. The top-level call is executed first, followed in order by all the calls below it.

"Input" Tab - Parameter Type

This section describes the structure of the operation of the called web service. Select the method to be used to return a value from the application. You can then use the "Edit" context menu to define the source of the value. The data type expected by the web service is specified in parentheses next to the method. For more information on the individual parameter types, click here. Select the desired method and click "Next."

"Output" tab

Create a session variable

Using the context menu, you can create a new session variable here, which can then be assigned the value returned by the web service by clicking the arrow buttons.

Create a variable in the processing context

Using the context menu, you can create a new variable in the processing context here, which can then be assigned as the target for the value returned by the web service by clicking the arrow buttons.

Create a Custom Variable

Using the context menu, you can create a new custom variable here, which can then be assigned the value returned by the web service by clicking the arrow buttons. You can find information about the namespace and local part here.

Parameter Types

Here is an overview of the parameter types that can be selected as inputs.

Value from data field

The "Value from Data Field" parameter type can only be selected if a data group is available—for example, if the process chain starts with a data group event handler. After clicking "Next," select the desired data field.

System value

System

Depending on the input parameter type, the current value of the system fields "Record ID," "Parent Record ID," or the date value ("Today (with time)" ) can be passed.

User

Here, you can select values from the "Users" module (e.g., first name, last name, employee ID, etc.). Their current value is then used as input.

Static value

A fixed value can be defined here as an input parameter. Please use the format yyyy-MM-ddTHH:mm:ssZ for date values (e.g., 2017-09-12T14:45:00Z). For Boolean values, please use "true" or "false". The value entered here cannot be changed via the browser.

Session variable

Default Values

The default values available for selection here are all values that Intrexx typically stores in a session variable when a page is visited:

  • Session ID

  • Session Creation Time

  • Language Setting

  • Timeout

  • Anonymous during a session without logging in

Additional Variables

The "Session Variable" parameter type can be used when querying multiple web services. In this process, the return values from a web service that has already been called are stored in a user-defined session variable and later used as input in one of the subsequent web services. A custom session variable can be defined on the "Output" tab. Use the "Add Session Variable" context menu option to declare the new session variable there.

Processing Context

You can enter the sharedState variable name here. The name should always start with a lowercase letter. If it consists of several words, the first letters of the subsequent words are capitalized.

User-Defined Variable

Enter the namespace and local part here.

An XML Qualified Name (QName) consists of two parts:

  1. Namespace URI

  2. local section

Example

Namespace: https://schemas.domain.de/variableNames/
local part: myValue

or

Namespace: urn:variableNames
local part: myValue

Two qualified names are equal if both their namespace and their local name match. A distinction is made between uppercase and lowercase letters.

Return value of a web service

The structure of the dialog corresponds to the "Web Services" tab in the properties of the Web Service action.

"Output" tab

This section displays all return values for the web service selected in the upper part of the dialog. This means that return values from previous calls can also be used as input.

Input and output parameter types must match. The priority of the calls, which determines the order of the requests, must also be taken into account for the "Web Service Return Value" parameter type.

Nothing

Nothing is assigned to this parameter type. The ability to explicitly specify an assignment of "nothing" can be useful in certain cases to resolve ambiguities in the assignment at runtime that would otherwise lead to errors.

Configuration

You can find the configuration when you edit a web service on the "Web Services" tab in the properties of the web service action.

Factory Class

Here, you can specify classes that are used at runtime to create objects that, among other things, make web service calls. This mechanism is used, for example, to perform the Intrexx login using the class "de.uplanet.lucy.server.bpee.IntrexxLoginWebServiceCallBpeeExecutableFactory." The class executes two consecutive calls for the Intrexx login operation without this being apparent to the user.

Properties

Here, you can configure factories, for example, by setting timeout values for connection establishment and server response.

"Add Parameter" inserts a new row, "Delete Parameter" deletes the currently selected parameter.

"Name" column

Displays the name of the parameter. If you click in a cell here, you can select an Intrexx parameter or enter your own parameter directly.

"Value" column

You can edit the parameter value here.

Configurable Parameters

When calling a web service, the parameters listed here can be set.

            de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.socketTimeout
        

Definition of the timeout: how long to wait for a response after a successful connection. Enter the desired time in milliseconds.

            de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.connectionTimeout
        

Definition of the timeout period before the web service accepts the connection. Enter the desired time in milliseconds.

            de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.authenticator.preemptiveAuthentication
        

In the case of HTTP Basic Authentication, the login credentials are sent in advance, before the server sends a possible "Unauthorized" response. The default value is false.

            de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.authenticator.username
        

A static username to be used for HTTP Basic authentication.

            de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.authenticator.password
        

A static password to be used for HTTP Basic authentication.

            de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.authenticator.host
        

Name of the host on which authentication should take place.

            de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.authenticator.port
        

Port on the destination host through which authentication should take place.

            de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.transport.http.protocolVersion
        

The HTTP protocol version.

            de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.transport.http.chunked
        

Specifies whether chunked transfer encoding should be used (true/false).

            de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.authenticator.allowedRetry
        

Set to true if the authentication scheme should allow retries. The default value is false.

            de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.authenticator.realm
        

Scope of the current authentication scheme.

            de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.authenticator.domain
        

Domain required for authentication.

            de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.authenticator.authSchemes
        

List of authentication schemes, e.g., Digest Basic.

Script

You can find the "Script" tab when you edit a web service on the "Web Services" tab in the properties of the web service action.

Here, you can write a Groovy script that will be executed when the web service is called. To do this, the portal right "Publish Velocity and Groovy scripts" must be granted.

Clicking "Create Groovy Script" at opens the Groovy script editor.

More Information

Register or Offer a Web Service in the "Integration" Module

"Processes" Module

Create and Manage Processes

The sections of the "Processes" module

Creating and Connecting Elements

Analyze the log file

Options

External Data in Processes

Java Classes in Process Objects