我已经从spring-integration-aws配置了一个S3MessageHandler
来将File
对象上传到S3。
上传失败,并显示以下跟踪:
引起:com.amazonaws.AmazonClientException:数据读取的长度与预期的不同:dataLength = 0; expectedLength = 26; includeSkipped = FALSE; in.getClass()= class com.amazonaws.internal.ResettableInputStream; markedSupported = TRUE;标记= 0; resetSinceLastMarked = FALSE; markCount = 1; resetCount = 0 在com.amazonaws.util.LengthCheckInputStream.checkLength(LengthCheckInputStream.java:152) ...
查看S3MessageHandler
的源代码,我不确定如何上传File
会成功。跟踪执行时,s3MessageHandler.upload()
方法执行以下操作:
我错过了什么,或者这是消息处理程序中的错误?
答案 0 :(得分:0)
是;这是一个错误;请打开Issue in GitHub和/或JIRA Issue。
对于FileInputStream
,应为InputStream
个有效负载创建一个新的,如果MD5使用该流,我们需要声明markSupported()
为真。
在"签署"之后考虑Contributing a fix CLA。
修改强>