Sample code for 30+ languages & platforms
Java

S3 List Bucket Objects (Bucket-in-Path)

See more Amazon S3 (new) Examples

Demonstrates how to fetch a list of objects in an S3 bucket, but using the bucket-in-path request format instead of putting the bucket name in the HOST header.

Chilkat Java Downloads

Chilkat2 Java
import com.chilkatsoft.chilkat2.AuthAws;
import com.chilkatsoft.chilkat2.ChilkatException;
import com.chilkatsoft.chilkat2.Rest;
import com.chilkatsoft.chilkat2.StringBuilder;
import com.chilkatsoft.chilkat2.Xml;

public class ChilkatExample {

    public static void main(String[] args) {
        // This example requires the Chilkat API to have been previously unlocked.
        // See Global Unlock Sample for sample code.

        Rest rest = new Rest();

        // Connect to the Amazon AWS REST server.
        boolean bTls = true;
        int port = 443;
        boolean bAutoReconnect = true;
        rest.connect("s3.amazonaws.com", port, bTls, bAutoReconnect);

        // ----------------------------------------------------------------------------
        // Important: For buckets created in regions outside us-east-1,
        // there are three important changes that need to be made.
        // See Working with S3 Buckets in Non-us-east-1 Regions for the details.
        // ----------------------------------------------------------------------------

        // Provide AWS credentials for the REST call.
        AuthAws authAws = new AuthAws();
        authAws.setAccessKey("AWS_ACCESS_KEY");
        authAws.setSecretKey("AWS_SECRET_KEY");
        authAws.setServiceName("s3");
        rest.setAuthAws(authAws);

        // The bucket name is "chilkat100"
        StringBuilder sbResponse = new StringBuilder();
        try {
            rest.fullRequestNoBodySb("GET", "/chilkat100", sbResponse);
        } catch (ChilkatException e) {
            System.out.println(e.getLastErrorText());
            return;
        }

        int statusCode = rest.getResponseStatusCode();
        System.out.println("Response status code = " + statusCode);

        Xml xml = new Xml();
        xml.loadSb(sbResponse, true);
        System.out.println(xml.getXml());

        if (statusCode != 200) {
            System.out.println("Failed.  See error information in the XML.");
            return;
        }

        // Use this online tool to generate code from sample XML:
        // Generate Code to Create XML

        String Key = "";
        String LastModified = "";
        String ETag = "";
        String SizeDecimalStr = "";
        String ID = "";
        String DisplayName = "";
        String StorageClass = "";

        String Name = xml.getChildContent("Name");
        int MaxKeys = xml.getChildIntValue("MaxKeys");
        String IsTruncated = xml.getChildContent("IsTruncated");
        int i = 0;
        int count_i = xml.numChildrenHavingTag("Contents");
        while (i < count_i) {
            xml.setI(i);
            Key = xml.getChildContent("Contents[i]|Key");
            LastModified = xml.getChildContent("Contents[i]|LastModified");
            ETag = xml.getChildContent("Contents[i]|ETag");
            SizeDecimalStr = xml.getChildContent("Contents[i]|Size");
            ID = xml.getChildContent("Contents[i]|Owner|ID");
            DisplayName = xml.getChildContent("Contents[i]|Owner|DisplayName");
            StorageClass = xml.getChildContent("Contents[i]|StorageClass");
            i = i + 1;
        }

        System.out.println("Success.");
    }
}