0

我有一条看起来像这样的路线:

from(URL_A)
  .from(URL_B)
  .to(URL_C)
  .process(...)
  // logging
  .to(URL_D)

这条路线在 Camel 2.XX 中完美运行,但在 3.7.X 中不适用

我得到的错误信息:

每条路由只允许一个输入。无法接受输入:From[direct:ABCD]

我检查了迁移指南,但我不知道如何迁移这种路线。

你知道如何进一步解决它吗?

4

2 回答 2

1

我认为您可以使用直接组件:https ://camel.apache.org/components/3.4.x/direct-component.html

例如:

from(URL_A)
  .to(direct:collector)
from(URL_B)
  .to(direct:collector)
  
from(direct:collector)
  .to(URL_C)
  .process(...)
  // logging
  .to(URL_D)
于 2021-03-16T16:50:16.757 回答
0

@Stepan Shcherbakov 提出了一个解决方案,下面将对其进行增强:

String [] sources = {URL_A, URL_B}
for (String source : sources) {
  from(source)
    .to(direct:collector)
}

from(direct:collector)
  .to(URL_C)
  .process(...)
  // logging
  .to(URL_D)
于 2021-03-17T09:11:53.560 回答