java - apache Camel 正则表达式中的 header 值

标签 java apache-camel

我想从与这样的正则表达式对应的文件夹中读取文件

from("direct:queuealpha").process(new DateTagGenerator()).from("file:///folder1/folder2/?delete=false&include=.*(${headers.timetag}).*);

因此 DateTagGenerator 设置一个 header ,其中包含我想在正则表达式中用作输入的值。我尝试逃跑{, $ and }以及使用简单但我显然做错了。

如何动态创建 header 或正文的值,然后将其用于正则表达式?

最佳答案

自 Camel 2.16 起,您可以将内容丰富器与动态端点 ([doc][1]) 一起使用,特别是 pollEnrich (因为您使用的是 文件端点)

from("direct:queuealpha")
  .process(new DateTagGenerator())
  .pollEnrich.simple("file:/folder1/folder2/?delete=false&include=${headers.timetagExpr}")
  .process(…) // you can now process the message
  .to(…); // and send it onward

关于java - apache Camel 正则表达式中的 header 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38459921/

相关文章:

java - Camel Spring JMS 队列连接示例

java - 在 Apache Storm bolt 中使用 Apache Camel ProducerTemplate

java - Android java.lang.NoSuchMethodError

java - 如何将索引元素移动到单个列表的末尾,同时移动所有其他元素java

java - 如何在Windows中从java自动启动rserve

java - 如何使用 JSoup 从 Android 中的 url 中的嵌入式 url 获取远程视频的直接链接?

java - 如何在Java程序中访问spring配置文件中定义的路由

spring - 如何通过 Spring 将自定义 StartupListener 添加到 Camel Context

java - Camel/ActiveMQ 事务、重新交付和 DLQ

java - servlet 中的可配置值