amazon-s3 - 如何将 JSON POJO 写入 SCDF 中的 s3 sink?
问题描述
我像这样创建了一个流SCDF
:s3-source | my-processor | s3-sink
。
这个想法是在 s3 存储桶中处理 XML 源文件,在我的处理器中转换和丰富数据,并在另一个 s3 存储桶中写出 JSON 文件。
它SCDF 2.7.1
在版本中的 s3 入门应用程序中运行良好3.0.0
。但它不再适用于SCDF 2.9.1
s33.1.1
应用程序。
我在同一主题上看到了这个已关闭的问题:https ://github.com/spring-cloud/stream-applications/issues/74已经有一年了,但问题似乎仍然存在。
无论来源是什么,从我的处理器中序列化 JSON 字符串中的 POJO 不再适用于不再支持字符串有效负载的 s3 接收器。错误信息是:
不支持的负载类型:[class java.lang.String]。上传请求唯一支持的有效负载是 java.io.File、java.io.InputStream、byte[] 和 PutObjectRequest
为什么 s3 sink 不再支持字符串有效负载?编码问题?
这是一个错误吗?
如果不是,那么处理这个问题的正确方法是什么?添加一个额外的转换应用程序只是为了更改 byte[] 中的字符串似乎有点痛苦和不必要的资源消耗。
解决方案
推荐阅读
- azure - Azure webjobs:在预定时间发送通知电子邮件?
- ios - 如何以编程方式从位于导航控制器内的视图控制器移动标签栏?
- python - Python多处理 - 有没有办法确保python进程在程序执行后停止
- java - 如何修复此 java.lang.ClassCastException:[B 无法转换为 java.util.List
- bash - shell函数返回值不能超过255吗?
- angular - Angular 6 Laravel 5.6 在服务调用中使用 httpOptions 时显示 405 个方法
- css - 仅为特定 div 内的所有元素重置 rem 或 font-size
- laravel - 迁移表时出现 PDO 异常错误
- javascript - 动态绑定和取消绑定指令
- mongodb - 有没有办法将 MongoDB db 命令转换为 sql 查询格式?