java - 在camel DSL中表示来自xml的路由列表

标签 java apache-camel

如何在 Camel 的 DSL 中表示这条路线:

   <camel:camelContext id="camel-context">
      <camel:route id="conductor-event" trace="true">
         <camel:from uri="direct:conductor/event"/>
         <camel:log message="handling conductor-event: id=${exchangeId}"/>
         <!-- execute each filter in sorted order -->
         <camel:bean ref="beaner.BProcessors"/>
         <camel:log message="after: [bprocessors]: id=${exchangeId}"/>
         <!-- map the event to a route -->
         <camel:recipientList parallelProcessing="false">
            <camel:method ref="beaner.Mappings" />
         </camel:recipientList>
         <camel:log message="after event mapping: id=${exchangeId}"/>
      </camel:route>
   </camel:camelContext>

到目前为止,我已经做到了这一点,但我得到一个“由以下原因引起:java.net.URISyntaxException:索引 0 处的方案名称中存在非法字符:%7BCamelToEndpoint=...”:

    RouteDefinition routeDef = from("direct:conductor/event")
    .log( "handling conductor-event: id=${exchangeId}" )
    .beanRef( "beaner.BProcessors" )
    .log( "after: [bprocessors]: id=${exchangeId}" );
    ExpressionClause<RecipientListDefinition<RouteDefinition>> recipientList = routeDef.recipientList();
    recipientList.properties().setParallelProcessing( false );
    recipientList.method( "beaner.EventMappings" );
    routeDef.log( "after event mapping: id=${exchangeId}" );

最佳答案

这是 JavaDSL 中的路由...请注意,recipientListparallelProcessing 默认情况下为 false...

from("direct:conductor/event")
    .log("handling conductor-event: id=${exchangeId}")
    .beanRef("beaner.BProcessors")
    .log("after: [bprocessors]: id=${exchangeId}")
    .recipientList(bean("beaner.Mappings"))
    .log("after event mapping: id=${exchangeId}");

关于java - 在camel DSL中表示来自xml的路由列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7432714/

相关文章:

java - 连续输入(输入/扫描仪)两个相同的数字以打破循环 "while"Java

java - 如何将变量从 Activity 传递到 Android 中的对象

java - 终止事件总线并获取结果

grails - 有什么方法可以覆盖默认的 Camel FatalFallbackErrorHandler 吗?

java - Camel - 使用 useMessageBodyForSql 进行 Camel SQL 批量插入

java - 确定编译时多捕获异常类型

java - 如何在java中正确使用wait()和notify线程?

apache-camel - 将属性文件与 Apache Camel 结合使用

java - 从 HTTP 端点发送消息到 JMS

java - 使用 JPA 持久化实体时面临的问题