Difference between revisions of "Calling SOAP Web services"

From Toolsverse Knowledge Base
Jump to: navigation, search
Line 4: Line 4:
 
# Define SOAP request in the connection CDATA attribute
 
# Define SOAP request in the connection CDATA attribute
  
<pre>
+
<syntaxhighlight lang="xml">
 
<connection alias="Cars">
 
<connection alias="Cars">
 
             <url>http://www.vendor.com/soapendpoint</url>
 
             <url>http://www.vendor.com/soapendpoint</url>
Line 35: Line 35:
 
             <transport>com.toolsverse.io.HttpProcessor</transport>
 
             <transport>com.toolsverse.io.HttpProcessor</transport>
 
         </connection>
 
         </connection>
</pre>
+
</syntaxhighlight>

Revision as of 00:22, 10 February 2015

The ETL Framework natively supports SOAP Web services over HTTP. You will need to:

  1. Set source or destination connection to the one linked to the SOAP endpoint
  2. Define SOAP request in the connection CDATA attribute
<connection alias="Cars">
            <url>http://www.vendor.com/soapendpoint</url>
            <CDATA><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://www.vendor.com/soapendpoint/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <SOAP-ENV:Header>
    <ns1:AuthenticationHeader>
      <vendorUserId>{requestUserId}</mktowsUserId>
      <vendorSignature>{requestSignature}</requestSignature>
      <vendorTimestamp>{requestTimestamp}</requestTimestamp>
    </ns1:AuthenticationHeader>
  </SOAP-ENV:Header>
  <SOAP-ENV:Body>
    <ns1:paramsGetMultipleCars>
      <leadSelector xsi:type="ns1:KeySelector">
        <keyType>MAKE</keyType>
        <keyValues>
          <stringItem>Ford</stringItem>
          <stringItem>Acura</stringItem>
        </keyValues>
      </leadSelector>
      <batchSize>100</batchSize>
    </ns1:paramsGetMultipleCars>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>
 
]]></CDATA>
            <params>method=post;exceptions=500;file=false;header_Content-Type=text/xml</params>
            <connector>com.toolsverse.etl.connector.xml.XmlObjectConnector</connector>
            <transport>com.toolsverse.io.HttpProcessor</transport>
        </connection>