Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The AQ_SoapServiceClient service service calls a SOAP webservice. It is similar to the AQ_WebServiceClient, but it handles only SOAP requests

AQ_SoapServiceClient leverages on spring-ws WebServiceTemplate which has the possibility to add additional security interceptors (http://docs.spring.io/spring-ws/site/reference/html/security.html).

Expand
titlespring-ws support

The features of the AQ_SoapServiceclient are listed below:

  • Basic authentication
  • Timeout setting
  • UsernameToken Profile V1.0
  • X.509 Token Profile V1.0
    • Signing
    • Timestamp
    • Encryption
  • Logging request / response
  • Exception handling for socket timeout
  • Exception handling for SoapFault
  • Map SoapFault to profile
  • Sending and receiving attachments
  • Dynamic urls
Excerpt

Parameters

The following parameters can be set for the service from Blueriq Encore:

NameDescriptionTypeRequiredDirectionSelect module
soapServiceName of SOAP service, with the module where it was defined.Module Element

...

YesInput

...

Yes
operationThe name of the operation that needs to be called.String

...

YesInput

...

No
urlThe URL of the SOAP webservice.String Expression

...

NoInput

...

No
connectionOverrideOverride the name of the used connection configuration from application.properties. This parameter may be used to share a configuration among multiple AQ_SoapServiceClient calls.String Expression

...

NoInput

...

No
mappingName of the data mapping to use, if a separate module is used for the WSDL.Data mapping

...

NoBiDirectional

...

No
usernameUsername to access the service.String

...

NoInput

...

No
passwordPassword to access the service.String

...

NoInput

...

No
soapFaultThe type of the instance that should be updated when a soap fault occurs.Entity

...

YesOutput

...

No
soapFaultCodeThe attribute of the instance which should be updated with the soap fault code when a soap fault occurs.Attribute

...

YesOutput

...

No
soapFaultMessageThe attribute of the instance which should be updated with the soap fault message when a soap fault occurs.Attribute

...

YesOutput

...

No
SoapFaultRoleThe attribute of the instance which should be updated with the soap fault roles object (SOAP 1.2), or the actor object (SOAP 1.1).Attribute

...

NoOutput

...

No
SoapFaultDetailsThe attribute of the instance which should be updated with the soap fault roles details object, this could either contain a text value or an xml message, which will be stored as text in the given attributeAttribute

...

NoOutput

...

No
connectionConnection to retrieve/store documents from/on.String

...

NoBiDirectional

...

No
fileListThe file(s) which will be attached and send.Multivalued Entity Expression

...

NoInput

...

No
fileRelationThe relation to hold returned files.Relation

...

NoOutput

...

No
persistence

The persistence parameter indicates whether the system should clean up files at the end of the request (MemoryConnection)/session (FileSystemConnection).

Children Display

Temporary / Permanent

...

NoInput

...

No
caseIdThe CaseId of the case the received documents belong to.String Expression

...

NoOutput

...

No
fileThe type of the instance that should be updated when a file is received.Entity

...

NoOutput

...

No
fileIdThe attribute of the instance which should be updated with the file id when a file is received.Attribute

...

NoOutput

...

No
fileContentIdThe attribute of the instance which should be updated with the file content id when a file is received.Attribute

...

NoOutput

...

No
fileNameThe attribute of the instance which should be updated with the file name when a file is received.Attribute

...

NoOutput

...

No
fileTypeThe attribute of the instance which should be updated with the file type when a file is received.Attribute

...

NoOutput

...

No
fileSizeThe attribute of the instance which should be updated with the file size when a file is received.Attribute

...

NoOutput

...

No
fileCreatedByThe attribute of the instance which should be updated with the file created by attribute when a file is received.Attribute

...

NoOutput

...

No
fileCreationDateThe attribute of the instance which should be updated with the file creation date when a file is received.Attribute

...

NoOutput

...

Behaviour default exit node
Info
title
No

Exit events

NameDescriptionType
OkWhen the SOAP request is executed successfully.Continue
Timeout When the SOAP request returns a timeout exception.Continue
SoapFault When the SOAP request returns a SOAP fault exception.Continue
ErrorWhen the SOAP request returns other errors.Cancel
Info
titleExit events

Make sure to map these events and connect them in your flowing when migrating from AQ_Webserviceclient.

Otherwise a timeout will trigger the default exit, not the exception exit.

The exit events can be found at the top right corner of the service call:

Image Removed

default exit event

All unmapped events will be redirected to

the

the default

exit

 exit node of the service call, even errors. Therefore it is recommended to always map all possible expected exit events.

When all expected events are mapped, the default exit node will be removed from the service call as exit event.

Note on persistence

...

Continue

...

Configuration in application.properties

The default SOAP security properties can be defined using the following properties:

NameDescriptionType
blueriq.security.keystore.locationThe path to the keystore file. The keys in the keystore will be used for signing and/or encrypting soap messages.String
blueriq.security.keystore.passwordThe password for the keystore file.String
blueriq.security.truststore.locationThe path to the trust store containing the public keys/certificates of external hosts that should be trusted
blueriq.security.truststore.passwordThe password for the truststore file.

Soap connection properties:

NameDescriptionType
blueriq.connection.[serviceName].soap.urlThe URL of the SOAP web service.String
blueriq.connection.[serviceName].soap.usernameThe username for basic authentication.String
blueriq.connection.[serviceName].soap.passwordThe password for basic authentication.String
blueriq.connection.[serviceName].soap.interceptorsA comma separated list of security interceptors (defined using the blueriq.soap.interceptors.security.* properties, please see the WS-Security documentation)String[]
blueriq.connection.[serviceName].soap.timeoutThe timeout in milliseconds.Integer
blueriq.connection.[serviceName].soap.client-certificate-alias-nameUses the certificate that is defined by the alias name from the configured keystore(check security properties on how to specify the keystore).String
Info
titleTroubleshoot

When migrating from the AQ_webserviceClient to the AQ_SoapserviceClient, you might run into an error. 

"IllegalStateException: Security type for service name is null. Did you forgot to add this to the properties file? "

In your application.properties there's still a line that refers to the old webservice client. Search for: webservice.soap.security.implementations=

This line should be removed from your properties file. That should solve the problem. 

How the URL is determined

  1. if the connectionOverride parameter is defined, the settings of that connection are used
  2. if a connection with the same name as the service call is defined, the settings of that connection are used
  3. if the url parameter is defined, the value resulting from evaluating the url expression is used
  4. otherwise, the URL in the WSDL is used

Related articles

Content by Label
showLabelsfalse
max5
spacesDOC
showSpacefalse
sortmodified
reversetrue
typepage
cqllabel = "soapserviceclient" and type = "page" and space = "DOC"
labelsDCM handleiding installatie foundation

...

hiddentrue

...