java - 如何配置2.6 spring : Failed to create route route2 at:

标签 java spring apache-camel

我正在尝试从 Camel 2.0 升级到 2.6

我的 applicationContext-camel.xml 文件中有这个...

<camel:route >
<camel:from uri="transactionSaleBuffer" />
<camel:policy ref="routeTransactionPolicy"/>
<camel:transacted ref="transactionManagerETL" />
<camel:to uri="detailFactProcessor" />
</camel:route>

通过在中间添加两行(策略和交易),我得到了异常......

Caused by: org.apache.camel.FailedToCreateRouteException: Failed to create route route2 at: >>> From[transactionSaleBuffer] <<< in route: Route[[From[transactionSaleBuffer]] -> [Tr ansacted[ref:trans... because of Route route2 has no output processors. You need to add outputs to the route such as to("log:foo").

我可以看到这是因为 Camel 类 RouteDefinition.java 调用了 ProcessorDefinitionHelper.hasOutputs(outputs, true)。

这会传入一个由一个对象组成的数组 ([Transacted[ref:transactionManagerETL]])

这个对象有一个两个子对象

[Transacted[ref:transactionManagerETL]]
CHILD-[Policy[ref:routeTransactionPolicy], 
CHILD-To[detailFactProcessor]

Policy 子项没有输出,因此抛出异常。

但是我不知道如何添加子项,我上面的 XML 与架构匹配。

也许我还缺少其他东西?

我的设置与示例匹配... Apache Camel: Book in One Page (请参阅部分:Camel 1.x - JMS 示例)

谁能帮帮我。 谢谢! 杰夫·波特

最佳答案

尝试如下

<camel:route>
  <camel:from uri="transactionSaleBuffer" />
  <camel:transacted ref="transactionManagerETL" />
  <camel:policy ref="routeTransactionPolicy">
    <camel:to uri="detailFactProcessor" />
  </camel:policy>
</camel:route>

关于java - 如何配置2.6 spring : Failed to create route route2 at:,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5638517/

相关文章:

java - 如何在查找资源文件的类路径上遍历目录树?

apache-camel - 使用 Camel 压缩和密码保护文件

java - 如何从 HttpURLConnection 创建 ResponseEntity?

java - JPA实体没有表中的列,但根据实体中不存在的列进行查询

java - 用%20替换空格时长度的值

java - 为什么允许在接口(interface)中实现

spring - 为什么没有 spring-asm-3.2.4.RELEASE jar?

java - 如何以及在哪里检查某些 Apache Camel 设置

java - Camel FTP 文件自动化

java - RmiProxyFactoryBean 超时