Amazon S3 Anmelden / Daten downloaden

obi

Mitglied
Hi, ich wollte ein kleines Programm schreiben in Java womit ich Daten vom Amazon S3 ( Amazon Simple Storage Service (Amazon S3) ) runter laden kann.

Leidert scheitert es bei mir grad schon bei der Anmeldung...warum weiß ich gar nicht genau da ich das Java SDK dazu nutze und laut Code Beispiel sollte es auch funktionieren: Amazon Simple Storage Service

Im Vergleich mein Code nur mit der Anmeldung bis jetzt:

Java:
import java.io.File;
import java.io.IOException;

import com.amazonaws.ClientConfiguration;
import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.BasicAWSCredentials;
import com.amazonaws.auth.PropertiesCredentials;
import com.amazonaws.services.s3.AmazonS3;
import com.amazonaws.services.s3.AmazonS3Client;
import com.amazonaws.services.s3.model.GetObjectRequest;
import com.amazonaws.services.s3.model.S3Object;

/*
 * AmazonS3
 * 
 * 1.0
 * 
 * 10.10.2011 
 * 
 */

public class AS3 {

	private String m_AccessKey; /* Required key for the client*/
	private String m_SecretKey; /* Required key for the client*/
	private AmazonS3Client s3client;
	
	public AS3(){
		
	}
	
	
	
	public AS3(String accessKey, String secretKey) throws IOException{
		this.m_AccessKey = accessKey;
		this.m_SecretKey = secretKey;
	}
	
	public void Login(){
		if(m_AccessKey != null && m_SecretKey != null){
			AWSCredentials myCredentials = new BasicAWSCredentials( m_AccessKey, m_SecretKey);
			s3client = new AmazonS3Client(myCredentials);
//			 AmazonS3 s3Client = new AmazonS3Client(new PropertiesCredentials(new File("credentials.csv")));
		}				

	}

	public String getM_AccessKey() {
		return m_AccessKey;
	}

	public void setM_AccessKey(String m_AccessKey) {
		this.m_AccessKey = m_AccessKey;
	}

	public String getM_SecretKey() {
		return m_SecretKey;
	}

	public void setM_SecretKey(String m_SecretKey) {
		this.m_SecretKey = m_SecretKey;
	}
	
	
	
}

Bekomme immer folgende Meldung:
Java:
Exception in thread "main" java.lang.ExceptionInInitializerError
	at com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:237)
	at AS3.Login(AS3.java:42)
	at Testmain.main(Testmain.java:18)
Caused by: java.lang.NullPointerException
	at com.amazonaws.util.VersionInfoUtils.initializeVersion(VersionInfoUtils.java:98)
	at com.amazonaws.util.VersionInfoUtils.getPlatform(VersionInfoUtils.java:73)
	at com.amazonaws.util.VersionInfoUtils.initializeUserAgent(VersionInfoUtils.java:121)
	at com.amazonaws.util.VersionInfoUtils.getUserAgent(VersionInfoUtils.java:86)
	at com.amazonaws.ClientConfiguration.<clinit>(ClientConfiguration.java:25)
	... 3 more

Wobei ich mir halt nicht erklären kann warum er in der S3-KLASSE eine NullPointer bekommt. Hier die api doc zum obj AmazonS3Client (AWS SDK for Java - 1.2.9)
 
Zuletzt bearbeitet:
Wobei ich mir halt nicht erklären kann warum er in der S3-KLASSE eine NullPointer bekommt.
Die NPE tritt schon davor auf, irgendwo im internen Source der API:
Code:
at com.amazonaws.util.VersionInfoUtils.initializeVersion(VersionInfoUtils.java:98)

Der Fehler in der S3-Klasse ist wohl nur ein Folgefehler. Liegt also nicht am Login oder den Credentials etc, sondern an etwas Grundlegenderem. Da ist irgendwas falsch eingebunden/installiert/eingestellt.
 
Jop es lag daran das die User Lib mit den den S3 jars als Bootstrap Entries eingetragen waren und nicht als User Entries...

Hab jetzt leider ein anderes Problem, das Netzwerk hier lässt mich nicht auf die Seite zugreifen:


Also müsst ich jetzt einen Proxy nutzen mit der ClientConfiguration (AWS SDK for Java - 1.2.9) vermute ich mal oder liegt es an noch was anderem?
 
Zuletzt bearbeitet:

Zurück
Oben