Managing integrated Web services

<< Click to Display Table of Contents >>

Navigation:  Automation Server > Automation Server configuration and administration guide > System maintenance and monitoring > Environment settings and administration > Management Console > Managing external systems >

Managing integrated Web services

Overview

Interface configuration refers to using Bizagi's Web services connector, to integrate with SOAP or REST services.

Bizagi lets you manage the parameters used by the integration points of your processes in a testing or production environment, as described at External systems administration.

 

note_pin

Through the options presented in the Systems module view, in the Development environment you can define new interfaces which are integrated to your Bizagi Processes, or edit the details of existing ones (to manage testing or production environments).

 

The interfaces listed in a system, include those invoking a SOAP web service and those invoking REST services.

Interfaces for SOAP web services are identified with this icon:         iconSOAP

Interfaces for REST services are identified with this icon:                 iconREST

 

Editing an existing interface

Once an interface has been defined and configured in a Process, you can edit its information. Similarly as in the interface creation, you can edit or include authentication credentials (for HTTP basic authentication), and manage the Service's URL.

 

To locate these set interfaces, go to the Module view and click on the External Systems module.

To edit an existing interface, right-click at the given interface and click on its Properties option:

 

InterfaceAdministration_01-Copy

 

The following window appears:

 

REV_InterfacesProperties

 

By default, the new interface is treated as a SOAP web service interface (Service Type = SOAP).

 

note_pin

Editing REST services URLs has certain considerations for Base URL management.

For more information about the considerations, see REST services interfaces.

 

The following fields are available:

Interface Name: The unique name for this interface which must not contain blank spaces (mandatory).

Service Type: Possible values are SOAP or REST. When you choose REST as the service type, there is no field to specify the service's method.

Interface properties table: A set of values for configuring the project's environments (Development, Test or Production). This set includes:

 

Property

Description

Web service URL

The URL to access the service. For REST services, this is the Base URL.

Username

When the service requires HTTP basic authentication, this username is required for service access.

Password

When the service requires HTTP basic authentication, this password is required for service access.

Domain

When the service requires HTTP basic authentication, this domain is optional to complement the username, for service access.

Logging Threshold (In Secs)

The time in seconds of an expected service threshold for the interface.

If the invocation exceeds this time execution, then the system records a trace line in the .csv log at .\Temporary\SOA\Log\ path of your project (by default, one file per web service, as C:\Bizagi\Projects\[your_project]\Temporary\SOA\Log\[your_interface]Log_1.csv).

This is helpful for monitoring, since each invocation that exceeds the threshold or produces a timeout records details of: DateTime, ErrorDescription, idCase, Task_Name, URL, Method_Name, and InterfaceTime(MM:ss:mmm).

 

The default value is set to 30 seconds. so that it will always records execution details when an invocation exceeds this time.

Time-out (In Secs)

The time in seconds which defines when to time out any attempt to invoke the interface.

If the invocation exceeds this definition in execution, the invocation throws an error that is recorded in a trace line in the .csv log at the .\Temporary\SOA\Log\ path of your project (by default, one file per web service, as C:\Bizagi\Projects\[your_project]\Temporary\SOA\Log\[your_interface]Log_1.csv).

This is helpful for monitoring since each invocation that exceeds the threshold or having produces a timeout records details of: DateTime, ErrorDescription, idCase, Task_Name, URL, Method_Name, and InterfaceTime(MM:ss:mmm).

 

By default, the value is -1, which means that interfaces do not have an initial definition of when to timeout.

The invocation times out according to this setting or the one defined for the activity if the invocation is done from an asynchronous activity (whichever has the lowest timeout definition).

Port Name

Provide a specific port name when there is the need to execute a SOAP web service that offers different service ports (i.e. SOAP 1.1, SOAP 2.0, etc.).

This port name can be configured separately according to each environment (i.e Development, Test, Production).

 

Provide the port name exactly as specified at the end of the service's WSDL definition:

 

InterfaceAdministration_PortNamesLocation

Max Buffer Size

Increment this value if you need to send a lot of information to your Web service (i.e a large file) that would normally exceed the default limit.

Corresponds to the attribute maxBufferSize of the bindings element of the Windows Communication Foundation (WCF) configuration file. Sets the maximum size of the SOAP headers.

Max Buffer Pool Size

Increment this value if you need to send a lot of information to your Web service (i.e a large file) that would normally exceed the default limit of sent information.

Corresponds to the attribute maxBufferPoolSize of the bindings element of the Windows Communication Foundation (WCF) configuration file. Sets the maximum amount of memory (in bytes) allocated.

Max String Content Length

Increment this value if you need to send a lot of information to your Web service (i.e a large file) that would normally exceed the default limit of sent information.

Corresponds to the attribute maxStringContentLength of the readerQuotas element of the Windows Communication Foundation (WCF) configuration file. Sets the maximum string length of the response.

Max Array Length

Increment this value if you need to send a lot of information to your Web service (i.e a large file) that would normally exceed the default limit of sent information.

Corresponds to the attribute maxArrayLength of the readerQuotas element of the Windows Communication Foundation (WCF) configuration file. Sets the maximum allowed array length.

Max Bytes Per Read

Increment this value if you need to send a lot of information to your Web service (i.e a large file) that would normally exceed the default limit of sent information.

Corresponds to the attribute maxBytesPerRead of the readerQuotas element of the Windows Communication Foundation (WCF) configuration file. Sets the maximum allowed bytes returned for each read.

Max Name Table Char count

Increment this value if you need to send a lot of information to your Web service (i.e a large file) that would normally exceed the default limit of sent information.

Corresponds to the attribute maxNameTableCharCout of the readerQuotas element of the Windows Communication Foundation (WCF) configuration file. Sets the maximum characters allowed in a table name.

 

note_pin

The values and data types of the attributes of Microsoft's Windows Communication Foundation (WCF) as explained above (parameters such as: max buffer size, max buffer pool size, max string content length, max array length, max bytes per read, and max name table char count), are set in the XML configuration file as shown below:

 

AdvancedSettings_AttributeTypes

 

This is the structure that Bizagi builds for the Web Service invocation.

 

Advanced Web services security:                                                

Click this button to configure the type of security you want to use to authenticate and invoke your web service.

 

WSSecurityConfig01

 

This definition differs from the basic authentication credentials specified in the above properties (username, password, domain) because it is used for Bizagi to access the WSDL and physical resources used by the web service definition, while the definition in this configuration determines the security involved at runtime for the web service itself.

 

Possible definitions you can edit and manage for an interface already set in your environment are:

 

Option

Description

Specification

Plain Header Token

Sends the user's token (usernameToken) within the SOAP header message, according to the WS-Security standard.

According to the technical definition at:

https://www.oasis-open.org/committees/download.php/16782/wss-v1.1-spec-os-UsernameTokenProfile.pdf  

Secure Conversation Header Token

Sends the user token according to the spec, by considering an appropriate certificate installed at the client.

According to the technical definition at:

http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512

Basic HTTP Authentication

Sends the credentials which apply when the service's end-point is protected (at a basic authentication level).

 

By default, Bizagi attempts to use Basic HTTP Authentication if no security definition is specified, and if you are relying on basic authentication to protect the service's resources (using the set credentials at the other properties: username, domain and password).

According to the technical definition at:

http://www.ietf.org/rfc/rfc2617.txt

 

Do not generate proxy in execution (generate now):                                                

Bizagi generates a proxy definition (a .cs and .dll file) when running on a .NET platform, for any external Web services that are integrated in the processes.

By default, this will be done the very first time that the service is invoked in execution.

 

By generating a proxy at design time (in Bizagi Studio), you choose to use this definition on execution instead of generating a newer one.

This option is useful when the setup of your Web services in a production environment has major security restrictions (its definition resources such as the WSDL and related schemas are not easily accessed).

 

With this option, you can generate the proxy from a WSDL configured in another environment (e.g, the Development environment).

To do this, use rely on the Use and generate from field to select the environment where the proxy will be generated.

 

note_pin

For this feature to work, make sure that the WSDL involved to generate the proxy is the same one used in the execution.