Java Examples

ChilkatHOMEASPVisual BasicVB.NETC#Visual C++CMFCDelphiFoxProJavaPerlPHPPythonRubySQL ServerVBScript

Java Examples

Quick Start
Unicode
Bz2
Certificates
CSV
Email
Encryption
FTP
HTML-to-XML
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...
Email Object
FileAccess
RSS
Atom
String
Byte Array
Self-Extractor
Service
PPMD
Deflate
DH Key Exchange
DSA

Unreleased...
Bzip2
LZW
Icon

 

 

 

 

 

 

 

Amazon S3 - List Buckets

Demonstrates how to send a GET request to the Amazon S3 service to list buckets.

Download Chilkat Java Library

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;
    success = http.UnlockComponent("Anything for 30-day trial.");
    if (success != true) {
        //  Unlock failed.
        System.out.println(http.lastErrorText());
        return;
    }

    //  The HTTP component now includes a method to generate
    //  the current date/time in RFC 2616 compliant format.
    //  Note: The GenTimeStamp method is available as a pre-release (as of 18-June-2008).
    //  It will become available in the next new version dated after
    //  18-June-2008.
    String curDateTime;
    curDateTime = http.genTimeStamp();

    System.out.println(curDateTime);

    //  The GET operation on the Service endpoint (s3.amazonaws.com) returns a list of all of the buckets owned by the authenticated sender of the request.
    String strToSign;
    strToSign = "GET" + "\n" + "\n" + "\n" + curDateTime + "\n" + "/";

    CkCrypt2 crypt = new CkCrypt2();

    success = crypt.UnlockComponent("Anything for 30-day trial.");
    if (success != true) {
        System.out.println(crypt.lastErrorText());
        return;
    }

    //  We want SHA1 for the HMAC hash algorithm:
    crypt.put_HashAlgorithm("sha1");

    //  These must be changed for your account:
    String AWSAccessKeyId;
    AWSAccessKeyId = "0PN5J17HBGZHT7JJ3X82";
    String AWSSecretAccessKey;
    AWSSecretAccessKey = "uV3F3YluFJax1cknvbcGwgjvx4QpvB+leU8dUj2o";

    //  Set the HMAC secret key:
    crypt.SetHmacKeyString(AWSSecretAccessKey);

    //  By setting the charset = "utf-8", the string will be converted
    //  to utf-8 (internal to the Chilkat component) prior to signing:
    crypt.put_Charset("utf-8");

    //  Indicate that Base64 output is desired:
    crypt.put_EncodingMode("base64");

    String signature;
    signature = crypt.hmacStringENC(strToSign);

    String authValue;
    authValue = "AWS " + AWSAccessKeyId + ":" + signature;

    http.SetRequestHeader("Authorization",authValue);
    http.SetRequestHeader("Date",curDateTime);

    String xmlResponse;
    xmlResponse = http.quickGetStr("http://s3.amazonaws.com/");
    if (xmlResponse == null ) {
        //  Failed.  Show the last request header, response header,
        //  and response body.
        System.out.println(http.lastHeader());
        System.out.println("---");
        System.out.println(http.lastResponseHeader());
        System.out.println("---");
        System.out.println(http.lastErrorText());
    }
    else {
        //  Success, show the XML response:
        System.out.println(xmlResponse);
    }

  }
}

 

Need a specific example? Send a request to support@chilkatsoft.com

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