Абсолютно! Предполагая, что вы выполняете составную часть (в соответствии с лучшими практиками), вы захотите выделить специальный случай для файлов с нулевым байтом:
AmazonS3 s3Client = /* your S3 client builder technique */
if ( contentLength == 0 ) {
s3Client.putObject( bucketName, targetKeyName,
new FileInputStream( file ), objectMetadata );
} else {
// Do your multipart upload per usual
}
При многоэлементной загрузке выдается исключение MalformedXML при запросе нулевых частей, но это явно не вызывается в сообщении. Также возможно, что другая часть вашего запроса также искажена, например, если ObjectMetadata поврежден, хотя обычно в этих случаях вы получите более четкое сообщение об исключении.