Help ELMA BPM Platform
×
Menu

Examples of SOAP Requests of a Web Service


Below you will find some examples of SOAP requests sent via web services.

Run method

This method starts a business process in ELMA. The external application sends the following SOAP 1.1 request to ELMA web service located at http://127.0.0.1:8000/Modules/EleWise.ELMA.Workflow.Processes.Web/WFPWebService:
POST http://127.0.0.1:8000/Modules/EleWise.ELMA.Workflow.Processes.Web/WFPWebService.asmx HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: text/xml;charset=UTF-8
SOAPAction: "http://www.demo.elma-bpm.com/WFPWebService/Run"
Content-Length: 495
Host: 127.0.0.1:8000
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wfp="http://www.demo.elma-bpm.com/WFPWebService/">
   <soapenv:Header/>
   <soapenv:Body>
      <wfp:Run>
         <wfp:userName>admin</wfp:userName>
         <wfp:password>omepassword</wfp:password>
         <wfp:token>d07f82c4-0065-4f95-bb25-05f4008e7cc5</wfp:token>
         <wfp:instanceName>Plotter for Marketing Department</wfp:instanceName>
         <wfp:data>
            <wfp:Items>
               <wfp:WebDataItem>
                  <wfp:Name>Name</wfp:Name>
                  <wfp:Value>Plotter for Marketing Department</wfp:Value>
               </wfp:WebDataItem>
               <wfp:WebDataItem>
                  <wfp:Name>OrderDescription</wfp:Name>
                  <wfp:Value>Required to print posters, 100 A1 pages per week</wfp:Value>
               </wfp:WebDataItem>
            </wfp:Items>
         </wfp:data>
      </wfp:Run>
   </soapenv:Body>
</soapenv:Envelope>
This request will initiate the business process with the d07f82c4-0065-4f95-bb25-05f4008e7cc5 token. The process is started under the name admin, whose password is omepassword. The name of the process instance will be "Plotter for Marketing Department". The Name and OrderDescription parameters will be sent to the process with the "Plotter for Marketing Department" and "Required to print posters, 100 A1 pages per week" values respectively.
If the process instance is successfully started, ELMA web service sends the following SOAP message to the external application:
HTTP/1.1 200 OK
Cache-Control: private, max-age=0
Content-Type: text/xml; charset=utf-8
Content-Length: 345
Connection: Close
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <RunResponse xmlns="http://www.demo.elma-bpm.com/WFPWebService/">
         <RunResult>280</RunResult>
      </RunResponse>
   </soap:Body>
</soap:Envelope>
The RunResult field shows the process instance ID.

LoadContext method

This method allows you to receive values of the process instance context variables. The external application sends the following SOAP 1.2 request to ELMA web service at http://127.0.0.1:8000/Modules/EleWise.ELMA.Workflow.Processes.Web/WFPWebService.asmx:
POST http://127.0.0.1:8000/Modules/EleWise.ELMA.Workflow.Processes.Web/WFPWebService.asmx HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: application/soap+xml;charset=UTF-8;action="http://www.demo.elma-bpm.com/WFPWebService/LoadContext"
Content-Length: 371
Host: 127.0.0.1:8000
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:wfp="http://www.demo.elma-bpm.com/WFPWebService/">
   <soap:Header/>
   <soap:Body>
      <wfp:LoadContext>
         <wfp:userName>admin</wfp:userName>
         <wfp:password>2342123</wfp:password>
         <wfp:instanceId>280</wfp:instanceId>
      </wfp:LoadContext>
   </soap:Body>
</soap:Envelope>
Sign in to ELMA under "admin" with the following password: 2342123. Process instance contents with "instanceId = 280" are loaded. The web service sends the following SOAP-message in return:
HTTP/1.1 200 OK
X-AspNet-Version: 4.0.30319
Cache-Control: private, max-age=0
Content-Type: application/soap+xml; charset=utf-8
Content-Length: 2974
Connection: Close
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <LoadContextResponse xmlns="http://www.demo.elma-bpm.com/WFPWebService/">
         <LoadContextResult>
            <Items>
               <WebDataItem>
                  <Name>Id</Name>
                  <Value>67</Value>
                  <DataArray/>
               </WebDataItem>
               <WebDataItem>
                  <Name>TypeUid</Name>
                  <Value>16850358-e1b6-4d4d-8ae6-eb5de067727c</Value>
                  <DataArray/>
               </WebDataItem>
               <WebDataItem>
                  <Name>WorkflowInstance</Name>
                  <Data>
                     <Items>
                        <WebDataItem>
                           <Name>Id</Name>
                           <Value>280</Value>
                           <DataArray/>
                        </WebDataItem>
                        <WebDataItem>
                           <Name>TypeUid</Name>
                           <Value>37ca54ae-c16f-4100-b25d-760adc1e2bd7</Value>
                           <DataArray/>
                        </WebDataItem>
                        <WebDataItem>
                           <Name>Uid</Name>
                           <Value>529cd5ca-33d5-4064-a1cf-9d7a1125034c</Value>
                           <DataArray/>
                        </WebDataItem>
                        <WebDataItem>
                           <Name>Name</Name>
                           <Value>Plotter for Marketing Department</Value>
                           <DataArray/>
                        </WebDataItem>
                     </Items>
                  </Data>
                  <DataArray/>
               </WebDataItem>
               <WebDataItem>
                  <Name>Uid</Name>
                  <Value>5a7d427c-ed05-42bf-ac7d-0c03c3973b3d</Value>
                  <DataArray/>
               </WebDataItem>
               <WebDataItem>
                  <Name>Iniciator</Name>
                  <Data>
                     <Items>
                        <WebDataItem>
                           <Name>Id</Name>
                           <Value>1</Value>
                           <DataArray/>
                        </WebDataItem>
                        <WebDataItem>
                           <Name>TypeUid</Name>
                           <Value>18faf3ae-03c9-4e64-b02a-95dd63e54c4d</Value>
                           <DataArray/>
                        </WebDataItem>
                        <WebDataItem>
                           <Name>Uid</Name>
                           <Value>c218a7eb-1e45-4056-bf84-c6818a1dabd6</Value>
                           <DataArray/>
                        </WebDataItem>
                        <WebDataItem>
                           <Name>Name</Name>
                           <Value>John Brown</Value>
                           <DataArray/>
                        </WebDataItem>
                     </Items>
                  </Data>
                  <DataArray/>
               </WebDataItem>
               <WebDataItem>
                  <Name>Name</Name>
                  <Value>Plotter for Marketing Department</Value>
                  <DataArray/>
               </WebDataItem>
               <WebDataItem>
                  <Name>OrderDescription</Name>
                  <Value>Required to print posters, 100 A1 pages per week</Value>
                  <DataArray/>
               </WebDataItem>
               <WebDataItem>
                  <Name>Summa</Name>
                  <Value/>
                  <DataArray/>
               </WebDataItem>
               <WebDataItem>
                  <Name>InvoiceVAT</Name>
                  <DataArray/>
               </WebDataItem>
               <WebDataItem>
                  <Name>DueDate</Name>
                  <Value/>
                  <DataArray/>
               </WebDataItem>
               <WebDataItem>
                  <Name>PaymentType</Name>
                  <DataArray/>
               </WebDataItem>
               <WebDataItem>
                  <Name>ExpectedPaymentDate</Name>
                  <Value/>
                  <DataArray/>
               </WebDataItem>
               <WebDataItem>
                  <Name>OrderDate</Name>
                  <Value/>
                  <DataArray/>
               </WebDataItem>
               <WebDataItem>
                  <Name>DeliveryDate</Name>
                  <Value/>
                  <DataArray/>
               </WebDataItem>
               <WebDataItem>
                  <Name>ReasonForRejection</Name>
                  <Value/>
                  <DataArray/>
               </WebDataItem>
               <WebDataItem>
                  <Name>ProcessDelay</Name>
                  <Value/>
                  <DataArray/>
               </WebDataItem>
               <WebDataItem>
                  <Name>PrintedForm</Name>
                  <DataArray/>
               </WebDataItem>
               <WebDataItem>
                  <Name>ReasonForInvoiceChange</Name>
                  <Value/>
                  <DataArray/>
               </WebDataItem>
               <WebDataItem>
                  <Name>WorkflowInstanceStatus</Name>
                  <DataArray/>
               </WebDataItem>
               <WebDataItem>
                  <Name>RequestParameters</Name>
                  <DataArray/>
               </WebDataItem>
            </Items>
         </LoadContextResult>
      </LoadContextResponse>
   </soap:Body>
</soap:Envelope>
The parameters are shown in the WebDataItem fields. The Name field contains the name of the parameter, and the Value field contains its value.
Copyright © 2006–2019 ELMA