...
While creating a web service provider, you need to check the Enable Attachment checkbox (see Figure 345).
Figure 345: Enable Attachment Property
If the request has any Base64 Binary or Hex Binary attachments, then your web service provider stores them in the system and within the request it replaces the attachments with a cid:uniqueid unique ID.
Info The web service provider stores these attachments at a base location that you can configure by the following steps:
- From the Adeptia Suite home page, click the Administer tab.
- On the Administer tab, click the Update System Properties link.
- On the Update System Properties screen, click on Services à Web Service Configuration.
- Change the value of the abpm.webservice.metro.soapattachment.location property by giving an absolute path. web/Attachments is the default value.
- You can find a list of all the names of the attachments and location of the attachments in the context info of the process flow within these variables:
...
Check the Enable Attachment checkbox while creating web service provider activity (see Figure 346).
Figure 346: Enable Attachment Property
- In the process flow designer, create context variable BinaryAttachmentFolderPath.
Mention an absolute folder path of the attachments in the BinaryAttachmentFolderPath variable.
Info If the location of attachments has both attachments and other folders then, the web service provider would send only files in the root folder. It will not recursively scan all the other folders for attachments.
Moreover the web service provider would attach files in the response by matching uniqueids with itself.
- Map the data to send a Base64 binary or Hex binary attachment with your response. Do the textual mapping by matching the Base64 or Hex binary element with cid:filename. Use this mapping activity in the Process Flow.
- The web service provider would then send its response with embedded attachments.
...
Create a Service.<entityName>.enableAttachment variable in the process designer of the process flow and set its value to True/Yes to receive the attachment with your response.
Info entityName is the name of the Web Service Consumer activity used in the process flow.
Set the value to False/No if you don’t want to receive the attachments with your response.
If the response has any Base64 Binary or Hex Binary attachments, then your web service consumer stores them in the system and within the response it replaces the attachments with a cid:uniqueid unique ID.
Info The web service consumer stores these attachments at a base location that you can configure by the following steps:
- From the Adeptia Suite home page, click the Administer tab.
- On the Administer tab, click the Update System Properties link.
- On the Update System Properties screen, click on Services à a Web Service Configuration.
- Change the value of the abpm.webservice.metro.soapattachment.location property by giving an absolute path. web/Attachments is the default value.
You can find a list of all the names of the attachments and location of the attachments in the context info of the process flow within these variables:
- ConsumerSOAPAttachmentsList variable contains the names of the attachments
ConsumerSOAPAttachmentsLocation variable contains the location of the attachments
Info MTOM (Message Transmission Optimization Mechanism) is a standard way for transmitting binary data, such as images, PDF files, and MS Word documents that uses SOAP protocol. The MTOM message format allows bit stream compression of binary data. This results in less transmission time as a large chunk of binary data takes up less space than its encoded representation.
The Adeptia Suite enables you to use MTOM properties for Web Service Consumer activity to achieve the transmission of binary data through SOAP messages. For better performance you can Check the Enable MTOM checkbox to use the MTOM format in your Web Service Consumer Activity(see Figure 347).
Figure 347: Enable Enable MTOM Property
The binary data that you extract from a response is encoded only if you have not enabled the MTOM checkbox while creating consumer.
However, if you have enabled the MTOM checkbox and the Web Service that you are trying to hit, also supports and has MTOM enabled at its end, the data that you extract will not be encoded.