当前位置: 首页 > 知识库问答 >
问题:

apache camel从s3读取文件时出现问题

舒仲渊
2023-03-14

我正在实现一个从s3获取文件、读取并删除它的路由。问题是删除后继续搜索文件并进入错误,我不明白为什么路由不停止。

这是我的

var uri = "aws-s3://$s3BucketName?amazonS3Client=#s3Client&fileName=$fileName&deleteAfterRead=true"
from(uri)

共有1个答案

伏子辰
2023-03-14

您使用的是consumer,因此它将以时段为基础进行轮询。您有多个选项来解决问题:

>

  • 在S3endpoint上使用repeatCount选项

    来自(“AWS-S3://$S3BucketName Amazons3Client=#S3Client&FileName=$FileName&DeleteAfterRead=True&RepeatCount=1”)

    from(timer)
    to(aws-s3)
    

    camel 3.2.0是一个开发版本,这一点很重要。我们建议使用3.7.x家族最后支持的LTS发行版,也就是3.7.2。

    另外一点,AWS-S3组件在3.8.0中已被弃用,在3.9.0中将被移除,所以请切换到CAMEL-AWS2-S3。

    [1]https://github.com/apache/camel/blob/camel-3.2.0/components/camel-aws-s3/src/main/java.org/apache/camel/component/aws/s3/s3producer.java#L98

  •  类似资料:
    • 我试图分块读取输入流并写入文件以避免内存问题,我接收json格式的数据,并使用以下代码写入文件。 我的问题是,大多数json都写得很好,虽然其中一些包含损坏的数据,但我不确定我是否正确地将CharBuffer与BufferedReader一起使用,我观察到的另一件事是,对于少量数据,它正确地将CharBuffer写入文件,当我从服务器接收到更大的数据(大约2MB的输入流-不是很大)时,我通常会遇到

    • 我是Python新手,一直在关注我在网上找到的关于解决中国邮递员问题的教程。 我上传了所需的CSV文件,但每当我试图定义用于打印的节点位置数据结构时,它总是说“KeyError:'X”“”,这是我的CSV文件的标题之一 一位朋友告诉我,可能的问题是CSV文件中有空格,但我不确定如何解决这个问题。 我试过使用在线教程中的文件,效果很好,所以我不确定我做错了什么。 是打印(df)运行时得到的输出类型

    • 我正在尝试读取1500 csv文件,但我收到以下错误。 读取时出错。表(file=file,header=header,sep=sep,quote=quote,:不允许重复的“row.names” 代码: 但当单独打开并保存文件时,我可以读取文件。但由于有1500个文件,我需要手动完成。如有任何帮助,我将不胜感激?

    • 我想读一个属性文件,如下所示: 但当我尝试这样做时,我会出现一个错误: 线程“main”java中出现异常。lang.NullPointerException:inStream参数在java中为null。base/java。util。物体。java上的requirennoull(Objects.java:246)。base/java。util。财产。在majorbot加载(Properties.j

    • 我在读取R中的txt文件时遇到了一些问题,我认为该文件是由行尾问题创建的。我有一个包含两列的数据帧:第一列包含格式为__label__1234的标签,第二列是一个文本字符串(出于隐私原因,我无法共享实际文本,但它可能类似于“我在麦道工作”)。我首先使用write。表将此信息存储在文本文件中 然后我稍后尝试将该文本文件读回R,我得到了不希望的结果。 数据出来看起来类似于 当我渴望的是 知道我可以在读