Lua
Lua
palena.sii.cl getSeed SOAP Request
See more SII Chile Examples
Demonstrates how to call getSeed SOAP request at palena.sii.clChilkat Lua Downloads
local chilkat = require("chilkat")
local http = chilkat.Http.new()
-- This example requires the Chilkat API to have been previously unlocked.
-- See Global Unlock Sample for sample code.
http.uncommon_options = "AllowEmptyHeaders"
http:set_request_header("SOAPAction", "")
-- The endpoint for this soap service is:
local endPoint = "https://palena.sii.cl/DTEWS/CrSeed.jws"
-- Send the following SOAP XML
-- <soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:def="http://DefaultNamespace">
-- <soapenv:Header/>
-- <soapenv:Body>
-- <def:getSeed soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
-- </soapenv:Body>
-- </soapenv:Envelope>
local xml = chilkat.Xml.new()
xml.tag = "soapenv:Envelope"
xml:add_attribute("xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance")
xml:add_attribute("xmlns:xsd", "http://www.w3.org/2001/XMLSchema")
xml:add_attribute("xmlns:soapenv", "http://schemas.xmlsoap.org/soap/envelope/")
xml:add_attribute("xmlns:def", "http://DefaultNamespace")
xml:update_child_content("soapenv:Header", "")
xml:update_attr_at("soapenv:Body|def:getSeed", true, "soapenv:encodingStyle", "http://schemas.xmlsoap.org/soap/encoding/")
local resp = chilkat.HttpResponse.new()
local success = http:http_str("POST", endPoint, xml:get_xml(), "utf-8", "text/xml", resp)
if not success then
print(http.last_error_text)
return
end
local responseStatusCode = resp.status_code
print("Response Status Code: " .. responseStatusCode)
-- You may examine the exact HTTP header sent with the POST like this:
print("LastHeader:")
print(http.last_header)
-- Examine the XML returned by the web service:
print("XML Response:")
local xmlResp = chilkat.Xml.new()
xmlResp:load_xml(resp.body_str)
print(xmlResp:get_xml())
-- Use this online tool to generate parsing code from response XML:
-- Generate Parsing Code from XML
-- The response is:
-- <?xml version="1.0" encoding="UTF-8"?>
-- <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-- <soapenv:Body>
-- <ns1:getSeedResponse soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="http://DefaultNamespace">
-- <ns1:getSeedReturn xsi:type="xsd:string"><?xml version="1.0" encoding="UTF-8"?><SII:RESPUESTA xmlns:SII="http://www.sii.cl/XMLSchema"><SII:RESP_BODY><SEMILLA>039159253918</SEMILLA></SII:RESP_BODY><SII:RESP_HDR><ESTADO>00</ESTADO></SII:RESP_HDR></SII:RESPUESTA></ns1:getSeedReturn>
-- </ns1:getSeedResponse>
-- </soapenv:Body>
-- </soapenv:Envelope>
-- Get the XML contained in the getSeedReturn element:
local embeddedXml = xmlResp:get_child_content("soapenv:Body|ns1:getSeedResponse|ns1:getSeedReturn")
print(embeddedXml)
-- The embedded XML is:
-- <?xml version="1.0" encoding="UTF-8"?>
-- <SII:RESPUESTA xmlns:SII="http://www.sii.cl/XMLSchema">
-- <SII:RESP_BODY>
-- <SEMILLA>039159397998</SEMILLA>
-- </SII:RESP_BODY>
-- <SII:RESP_HDR>
-- <ESTADO>00</ESTADO>
-- </SII:RESP_HDR>
-- </SII:RESPUESTA>
-- Get the seed:
local xml2 = chilkat.Xml.new()
xml2:load_xml(embeddedXml)
local seed = xml2:get_child_content("SII:RESP_BODY|SEMILLA")
print("seed = " .. seed)
-- --------------------------------------------------------------------------------
-- Also see Chilkat's Online WSDL Code Generator
-- to generate code and SOAP Request and Response XML for each operation in a WSDL.
-- --------------------------------------------------------------------------------