0

我是 Apache camel-aws 的初学者。我正在编写一个程序来使用 apache camel 将文件从一个 aws s3 存储桶传输到另一个存储桶。我现在想记录从 s3 中选取的文件/对象名称。你能帮我做同样的事情吗?下面是我的代码片段。${file:name} 适用于骆驼 FTP 组件,想了解它在 aws 中的等价物。

from("aws-s3://sourceBucket?amazonS3Client=#amazonS3Client")
                .log("The following file has been picked for file transfer    : ${file:name}")
                .routeId("Test My Files").log("Building Destination URI for fie transfer")
                .to("aws-s3://destinationBucket?amazonS3Client=#amazonS3Client")
                .log("The following file transfer has completed   : ${file:name}");

亲切的问候,卡希夫

4

1 回答 1

2

不,不一样。

您需要使用标头 CamelAwsS3Key

.log("The following file has been picked for file transfer: ${header.CamelAwsS3Key}")

这是在从 S3 存储桶消费时设置的。

于 2018-01-25T14:45:53.920 回答