Java Examples

ChilkatHOMEAndroid™ASPVisual BasicVB.NETC#iOS (IPhone)Objective-CC++CMFCDelphiFoxProJavaPerl
PHP 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

 

 

 

 

 

 

 

Amazon S3 - Create Bucket with PUT Request

Demonstrates how to create an Amazon S3 bucket by sending a PUT HTTP request.

 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;
    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 PUT request operation with a bucket URI creates a new bucket.
    String strToSign;
    strToSign = "PUT" + "\n" + "\n" + "\n" + curDateTime + "\n" + "/chilkat/";

    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 = "zzzzzzzzzzzzzzzzzzzzz";
    String AWSSecretAccessKey;
    AWSSecretAccessKey = "zzzzzzzzzzzzzzzzzzzzzzzzzzzz";

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

    //  The bucket to be created is specified in the Host header.
    //  In this example, the "chilkat" bucket is created:
    http.SetRequestHeader("Host","chilkat.s3.amazonaws.com");

    http.SetRequestHeader("Authorization",authValue);
    http.SetRequestHeader("Date",curDateTime);
    http.SetRequestHeader("Content-Length","0");

    String xmlResponse;
    xmlResponse = http.quickPutStr("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 is indicated by an empty xmlResponse string, and
        //  a response status of 200.
        if (http.get_LastStatus() == 200) {
            System.out.println("Bucket created!");

            //  Let's check out the response header anyway...
            System.out.println(http.lastResponseHeader());

        }
        else {
            //  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());
        }

    }

  }
}

 

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