An Envelope definition is divided into following parts:
Name | Description | Mandatory | Value | Default |
---|---|---|---|---|
description | A description of the envelope | no | ||
soap | Defines if the envelope has SOAP format | yes | true/false | true |
This part is not mandatory. NamespaceDefinition
tag can contain
unlimited Ns
rows but can also be empty.
This definition's name will be used as substitute variables in inbound and
outbound definitions.
Name | Description | Mandatory | Value |
---|---|---|---|
Ns/name | prefix of the namespace | yes | |
Ns/uri | The namespace uri | yes |
This part defines the identification of the envelope and the format of the
response and error. The entire section can be omitted if the envelope is not
supposed to be used for inbound messages.
Identification and Inbound properties
Name | Description | Mandatory | Value | Default |
---|---|---|---|---|
Identification/priority | Defines the priority of the identification. If more then one envelope match, the one with the highest priority will be used. |
yes | 1 - 10 (1 = Highest) |
10 |
Id/op | Identification operand | yes | exist/not_exist | |
Id/value | Identification value | yes | ||
BodyTag | Defines the start element of the message body | yes | Namespace definitions can be used as substitute variables {Ns/name} | |
MessageType | Defines the MessageType. MessageType is either fetched from the specified inbound element's value or set fixed. |
yes | ||
MessageType/def | Defines how to set the MessageType. MessageType is a part of the internal Application Message. MessageType is either fetched from the specified inbound element's value or set fixed. |
yes | element/fixed | fixed |
MessageFunction | Defines the MessageFunction. MessageFunction is a part of the internal Application Message. MessageFunction is fetched from the specified inbound element's value. |
yes | ||
Sender | Defines the Sender. Sender is a part of the internal Application Message. Sender is fetched from the specified inbound element's value. |
no | ||
Receiver | Defines the Receiver. Receiver is a part of the internal Application Message. Receiver is fetched from the specified inbound element's value. |
no |
The response of the message can be formatted with a combination of fixed
strings and substitute variables.
The format is defined in a CDATA
section in the
Response
element.
<Response> <![CDATA[ <?xml version="1.0" encoding="UTF-8"?> <{SOAP-ENV}:Envelope xmlns:{SOAP-ENV}="http://schemas.xmlsoap.org/soap/envelope/"> <{SOAP-ENV}:Header> <fndcn:Response {SOAP-ENV}:mustUnderstand="1" xmlns:fndcn="urn:ifsworld-com:schemas:fndcn"> <fndcn:Type>{fndcn:Type}</fndcn:Type> <fndcn:Function>{fndcn:Function}</fndcn:Function> </fndcn:Response> </{SOAP-ENV}:Header> <{SOAP-ENV}:Body>{DATA}</{SOAP-ENV}:Body> </{SOAP-ENV}:Envelope> ]]> </Response>
Substitute variable | Description |
---|---|
{Ns/name} | Namespace prefix (name attribute of the Ns tag) from the
NamespaceDefinition
section can be used as substitute
variables |
{any element in the request} | Maps elements from the request to the response |
{DATA} | Defines where the message data response should be inserted. |
The response definition is used for encapsulation of response from a sender,
if ENVELOPE_RESPONSE
is marked (see
Connect Sender configuration). But asynchronous routing of inbound messages
will also create a response with information about the queue the message has
been put into. This response will also be encapsulated within this definition
and, if CREATE_RESPONSE
on the actual
Reader is marked, the encapsulated response will became the Message Body
of the new
Application Message.
Error data format
The error of the message can be formatted with a combination of fixed
strings and substitute variables.
The format is defined in a CDATA
section in the Error
element.
<Error> <![CDATA[ <?xml version="1.0" encoding="UTF-8"?> <{SOAP-ENV}:Envelope xmlns:{SOAP-ENV}="http://schemas.xmlsoap.org/soap/envelope/"> <{SOAP-ENV}:Body> <{SOAP-ENV}:Fault> <faultcode>{SOAP-ENV}:Server</faultcode> <faultstring>{ERROR}</faultstring> <detail> <ifserr:error xmlns:ifserr="urn:ifsworld-com:schemas:error"> <ifserr:errordetail>{DETAIL_ERROR}</ifserr:errordetail> </ifserr:error> </detail> </{SOAP-ENV}:Fault> </{SOAP-ENV}:Body> </{SOAP-ENV}:Envelope> ]]> </Error>
Substitute variable | Description |
---|---|
{Ns/name} | Namespace prefix (name attribute of the Ns tag) from
the NamespaceDefinition section can be used as substitute
variables |
{ERROR} | The error reason. Normally the exception type |
{DETAIL_ERROR} | The detailed error text. Normally the exception text. |
The error definition is used for encapsulation of response from asynchronous
routing of inbound messages on failure. If CREATE_RESPONSE
on the
actual
Reader is marked, the encapsulated response will became the Message Body
of the new
Application Message.
This part define the format of the outbound message. The entire section can be omitted if the envelope is not supposed to be used for outbound messages.
Out data format
The output format of the message can be formatted with a combination of
fixed strings and substitute variables.
The format is defined in a CDATA
section in the Out
element.
<OutboundDefinition> <Out> <![CDATA[ <?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Header> <fndcn:Message SOAP-ENV:mustUnderstand="1" xmlns:fndcn="urn:ifsworld-com:schemas:fndcn"> <fndcn:Type>{head-MESSAGE_TYPE}</fndcn:Type> <fndcn:Function>{head-MESSAGE_FUNCTION}</fndcn:Function> <fndcn:Sender>{head-SENDER}</fndcn:Sender> <fndcn:Receiver>{head-RECEIVER}</fndcn:Receiver> </fndcn:Message> </SOAP-ENV:Header> <SOAP-ENV:Body>{DATA}</SOAP-ENV:Body> </SOAP-ENV:Envelope> ]]> </Out> + <Response> </OutboundDefinition>
Substitute variable | Description |
---|---|
{Ns/name} | Namespace prefix (name attribute of the Ns tag) from
the NamespaceDefinition section can be used as substitute
variables |
{head-SENDER} | Maps the ApplicationMessage Sender attribute to the output |
{head-RECEIVER} | Maps the ApplicationMessage Receiver attribute to the output |
{head-MESSAGE_TYPE} | Maps the ApplicationMessage MessageType attribute to the output |
{head-MESSAGE_FUNCTION} | Maps the ApplicationMessage MessageFunction attribute to the output |
{head-SUBJECT} | Maps the ApplicationMessage Subject attribute to the output |
{head-OPTIONS} | Maps the ApplicationMessage Options attribute to the output |
{head-EXTERNAL_MESSAGE_ID} | Maps the ApplicationMessage ExternalMessageId attribute to the output |
{addr-SENDER} | Maps the AddressLabel Sender attribute to the output |
{addr-SENDER_ORGANIZATION} | Maps the AddressLabel SenderOrganization attribute to the output |
{addr-RECEIVER} | Maps the AddressLabel Receiver attribute to the output |
{addr-RECEIVER_ORGANIZATION} | Maps the AddressLabel ReceiverOrganization attribute to the output |
{addr-OPTIONS} | Maps the AddressLabel Options attribute to the output |
{DATA} | Defines where the message data should be inserted. |
The out definition will be used for encapsulation of output data just
before sending it to the destination, if Envelope
is defined on
the actual
Routing Address.
Response Identification and Response properties
Response
element defines tags used for identification of the
response message received by a Connect Sender and extracting of the message
body. The entire section can be omitted if the body is not supposed to be
extracted.
Name | Description |
---|---|
OKIdentification | Identification string. If the response message contains this string, the framework will make an attempt to extract the message body. |
ErrorIdentification | If the response is an error, the identification of the error. |
ErrorText | The description of the error |
ErrorDetailText | The details of the error. |
BodyTag | Specification of the XML tag denoting body of the response message |
Note: Internally all type of text data (plain text or XML) is always encoded in UTF-8 character encoding. Re-coding from/to another character set is done, if necessary, in Readers, when reading messages and Senders, when sending messages. Thus it is not necessary to specify encoding in Response, Error or Out definitions above.
Follow these steps to create a new envelope:
New
from the RMB menu as described in section
How to create a new configuration parameter instance.Envelope
.