Xojo Plugin
Xojo Plugin
Extract and Save PDF from SOAP XML
See more XML Examples
Demonstrates how to extract and save PDF file that is embedded in SOAP XML (or any XML).Chilkat Xojo Plugin Downloads
Dim success As Boolean
success = False
Dim xml As New Chilkat.Xml
success = xml.LoadXmlFile("qa_data/soap/soapWithPdf.xml")
If (success <> True) Then
System.DebugLog(xml.LastErrorText)
Return
End If
// The XML we loaded looks like this:
// <?xml version="1.0" encoding="utf-8" ?>
// <s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
// <s:Body>
// <ObtenerPDFResponse xmlns="http://xyz.org/">
// <ObtenerPDFResult xmlns:a="http://schemas.xyz.org/something" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
// <a:CBB i:nil="true" />
// <a:CodigoConfirmacion i:nil="true" />
// <a:ErrorDetallado />
// <a:ErrorGeneral i:nil="true" />
// <a:FechaGenerada i:nil="true" />
// <a:FolioGenerado i:nil="true" />
// <a:OperacionExitosa>true</a:OperacionExitosa>
// <a:PDF>JVBERi0xLjQKJe...</a:PDF>
// <a:XML i:nil="true" />
// </ObtenerPDFResult>
// </ObtenerPDFResponse>
// </s:Body>
// </s:Envelope>
Dim pdfElement As Chilkat.Xml
pdfElement = xml.FindChild("s:Body|ObtenerPDFResponse|ObtenerPDFResult|a:PDF")
If (xml.LastMethodSuccess <> True) Then
System.DebugLog("Did not find the PDF element at the expected location.")
Return
End If
success = pdfElement.SaveBinaryContent("qa_output/out.pdf",False,False,"")
If (success <> True) Then
System.DebugLog(xml.LastErrorText)
Return
End If
System.DebugLog("Successfully extracted and saved the PDF.")