Sample code for 30+ languages & platforms
Java

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 Java Downloads

Java
import com.chilkatsoft.*;

public class ChilkatExample {

  static {
    try {
        System.loadLibrary("chilkat");
    } catch (UnsatisfiedLinkError e) {
      System.err.println("Native code library failed to load.\n" + e);
      System.exit(1);
    }
  }

  public static void main(String argv[])
  {
    boolean success = false;

    CkXml xml = new CkXml();

    success = xml.LoadXmlFile("qa_data/soap/soapWithPdf.xml");
    if (success != true) {
        System.out.println(xml.lastErrorText());
        return;
        }

    // 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>

    CkXml pdfElement = xml.FindChild("s:Body|ObtenerPDFResponse|ObtenerPDFResult|a:PDF");
    if (xml.get_LastMethodSuccess() != true) {
        System.out.println("Did not find the PDF element at the expected location.");
        return;
        }

    success = pdfElement.SaveBinaryContent("qa_output/out.pdf",false,false,"");
    if (success != true) {
        System.out.println(xml.lastErrorText());
        return;
        }

    System.out.println("Successfully extracted and saved the PDF.");
  }
}