Java Examples

ChilkatHOMEAndroid™ASPVisual BasicVB.NETC#iOS (IPhone)Objective-CC++CUnicode C++Unicode CMFCDelphi DLLDelphi ActiveXFoxProJavaPerlPHP ExtensionPHP ActiveXPythonPowerShellRubySQL ServerVBScript

Java Examples

Quick Start
Unicode
Bz2
Certificates
CSV
Email
Encryption
FTP
HTML Conversion
HTTP
IMAP
MHT
MIME
POP3
RSA
S/MIME
SFTP
Signatures
SMTP
Socket / SSL
Spider
SSH
SSH Key
SSH Tunnel
Tar
Upload
XML
XMP
Zip

More Examples...
Amazon S3
Email Object
DKIM / DomainKey
NTLM
FileAccess
RSS
Atom
String
Byte Array
Self-Extractor
Service
PPMD
Deflate
DH Key Exchange
DSA
Bzip2
LZW

 

 

 

 

 

 

 

SOAP Web Service (HTTP POST)

Demonstrates how to call PostXml to call a SOAP web service.

 Chilkat Java Library Downloads for Windows, Linux, and MAC OS X

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[])
  {

    CkHttp http = new CkHttp();

    boolean success;

    //  Any string unlocks the component for the 1st 30-days.
    success = http.UnlockComponent("Anything for 30-day trial");
    if (success != true) {
        System.out.println(http.lastErrorText());
        return;
    }

    //  This example uses a live web service at:
    //  http://www.webservicex.net/uklocation.asmx
    //  It gets the UK town,Postcode and County by Postcode(First Section of Post Code)

    //  The SOAP XML will look like this:
    //  <?xml version="1.0" encoding="utf-8"?>
    //  <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    //    <soap:Body>
    //      <GetUKLocationByPostCode xmlns="http://www.webserviceX.NET">
    //        <PostCode>string</PostCode>
    //      </GetUKLocationByPostCode>
    //    </soap:Body>
    //  </soap:Envelope>

    //  For this example's sake, we'll load the XML from a file.  We'll test using PostCode "E3".
    //  The SOAP XML for this example may be downloaded from:
    //  http://www.chilkatsoft.com/testData/ukPostCodeSoap.xml
    CkXml xml = new CkXml();
    success = xml.LoadXmlFile("ukPostCodeSoap.xml");
    if (success != true) {
        System.out.println(xml.lastErrorText());
        return;
    }

    String strXml;
    strXml = xml.getXml();

    CkHttpResponse resp;
    int responseStatusCode;

    //  We'll need to add this in the HTTP header:
    //  SOAPAction: "http://www.webserviceX.NET/GetUKLocationByPostCode"
    http.SetRequestHeader("SOAPAction","http://www.webserviceX.NET/GetUKLocationByPostCode");

    //  Some services expect the content-type in the HTTP header to be "application/xml" while
    //  other expect text/xml.  The default sent by Chilkat is "application/xml", but this web service
    //  expects "text/xml".  Therefore, change the content-type:
    http.SetRequestHeader("Content-Type","text/xml; charset=utf-8");

    //  The endpoint for this soap service is:
    String endPoint;
    endPoint = "http://www.webservicex.net/uklocation.asmx";

    //  Note: This particular web service was live and functioning at the time this example
    //  was written.  It is possible that as time progresses, this web service will no longer
    //  be availble...
    resp = http.PostXml(endPoint,strXml,"utf-8");
    if (resp == null ) {
        System.out.println(http.lastErrorText());

        System.out.println("LastHeader:");
        System.out.println(http.lastHeader());
    }
    else {

        responseStatusCode = resp.get_StatusCode();
        //  You may wish to verify that the responseStatusCode equals 200...
        System.out.println("Response Status Code: "
             + responseStatusCode);

        //  You may examine the exact HTTP header sent with the POST like this:
        System.out.println("LastHeader:");
        System.out.println(http.lastHeader());

        //  Examine the XML returned by the web service:
        System.out.println("XML Response:");
        CkXml xmlResp = new CkXml();
        success = xmlResp.LoadXml(resp.get_BodyStr());
        //  Assume the LoadXml is successful...
        //  Get rid of the SOAP wrappings and get to the meat of this particular response.
        //  The TagContent method returns the content of the 1st node in the XML document
        //  having a specific tag:
        String unwrappedXml;
        unwrappedXml = xmlResp.tagContent("GetUKLocationByPostCodeResult");
        System.out.println(unwrappedXml);

        //  The unwrapped XML could be loaded into an XML object and parsed...
        CkXml xmlMeat = new CkXml();
        success = xmlMeat.LoadXml(unwrappedXml);

        //  ...
    }


  }
}

 

© 2000-2013 Chilkat Software, Inc. All Rights Reserved.