Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/328.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在camel DSL中表示来自xml的路由列表_Java_Apache Camel - Fatal编程技术网

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

Java 在camel DSL中表示来自xml的路由列表,java,apache-camel,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=$

我如何在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=…”:

routedDefinition routeDef=from(“直接:导体/事件”)
.log(“处理导体事件:id=${exchangeId}”)
.beanRef(“beaner.b处理器”)
.log(“在:[b处理器]:id=${exchangeId}之后”);
ExpressionClause recipientList=routeDef.recipientList();
recipientList.properties().setParallelProcessing(false);
方法(“beaner.EventMappings”);
log(“事件映射后:id=${exchangeId}”);

这是JavaDSL中的路由…请注意,默认情况下recipientList并行处理为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}");

这是JavaDSL中的路由…请注意,默认情况下recipientList并行处理为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}");

您应该在JavaDSL中使用RouteBuilder类来访问DSL。 然后在configure方法中,您可以构建与XMLDSL中几乎相同的路由


请参阅此处的入门指南:

您应该在Java DSL中使用RouteBuilder类来访问DSL。 然后在configure方法中,您可以构建与XMLDSL中几乎相同的路由

请参阅此处的入门指南:

FYI,如果我取出“recipientList.properties().setParallelProcessing(false)”;“它工作正常……仅供参考,如果我取出“recipientList.properties().setParallelProcessing(false)”;“它工作正常。。。