java - 不同形式的 Camel : Content based routing,

标签 java apache-camel apache-karaf fuseesb

我有两个程序,由三个路线组成。

[  
one is a route, from JPA database to bean.  
one is a copier, from file system endpoint to file system endpoint  
]

[  
one is a uploader, from file system endpoint to bean.  
] 

我想根据属性文件的输入运行一个程序

<context:property-placeholder location="./run.properties"
    ignore-resource-not-found="false" />

但是我能找到的基于内容的路由的所有内容都是示例,其中选择位于来源下方。例如。

from("direct:start")
    .choice()
        .when(body().contains("Camel"))
            .loadBalance().roundRobin().to("mock:foo").to("mock:bar")
        .otherwise()
            .to("mock:result");

我想要一种重新排列为这样的方法:

choice()
   .when(body().contains("Camel"))
      from("direct:start1").loadBalance().roundRobin().to("mock:foo").to("mock:bar")
   .otherwise()
      from("direct:start2").to("mock:result");

最佳答案

您不需要基于内容的路由来控制路由是否启动...

只需使用autoStartup(boolean) API 来控制此...

例如...

from("activemq:queue:special").autoStartup("{{startupRouteProperty}}").to("file://backup");

参见http://camel.apache.org/configuring-route-startup-ordering-and-autostartup.html

关于java - 不同形式的 Camel : Content based routing,,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26842909/

相关文章:

java - 如何在 Java 中包含一个在 C++ 中具有 native 绑定(bind)的库(剧本)?

浮点和运算符的java匹配器正则表达式错误?

java - spring boot 使用 kafka 进行分布式处理

java - 多连接工厂

java - 在 Karaf 中使用 Oracle 驱动程序和 Apache Camel SQL 组件

java - maven安装过程中出现奇怪的异常,但构建成功

java - 扫描仪跳过循环 Java 中的第一个输入

java - 如何在通过管道传输到头部时让 java 退出

java - CAMEL JMS 崩溃并停止生成消息

java - 如何让 karaf rest 示例起作用?