3

我有我的应用程序托管在AWS Elastic Beanstalk - Tomcat 6.我的数据文件存储在S3存储桶中。当我在我的机器上的本地服务器上托管我的应用程序时,我能够读取和写入数据到我的S3存储桶(通过SDK使用),但是从托管在Elastic Beanstalk上的应用程序写入操作显示错误,即Elastic Beanstalk Tomcat的。我得到以下错误:无法计算MD5:AWS S3存储桶

com.amazonaws.AmazonClientExceptio­n: Unable to calculate MD5 hash: visitorsinfo.json (No such file or directory)

我有我的S3存储桶是从我的本地服务器在我的机器成功访问,但不能从弹性魔豆访问visitorsinfo.json ..

+0

EBS =弹性块存储。你是指Elastic Beanstalk? –

+2

此外,该错误消息的关键部分是“没有这样的文件或目录”,而不是“无法计算MD5哈希”,这似乎是你的重点。该文件实际上不存在。 –

+0

嗨,它的Elastic Beanstalk,该文件存在,并且当我将本地机器指向同一个存储桶时,该文件被修改。它非常奇怪的行为,任何猜测? – user3112954

回答

0

得到这个解决通过创建具有配置64位Linux的亚马逊V1.1.0 2014.03新的应用程序运行Tomcat 7的Java 6

1

不是传递的文件对象传递输入流,以认沽对象如下所示

InputStream is=file.getInputStream();                   
s3client.putObject(new PutObjectRequest(bucketName, keyName,is,new ObjectMetadata()));