关于 Camel 直接组件的说明
Clarification about Camel direct component
我可以看到许多 Camel 路由示例都是使用 "direct" 组件启动的。例如:
<camelContext xmlns="http://camel.apache.org/schema/spring">
<route id="myroute">
<from uri="direct:start"/>
<setBody>
<simple>Hello World!</simple>
</setBody>
<log message="${body}"/>
<to uri="mock:result"/>
</route>
</camelContext>
然而,通过 运行 像这样的路由 (mvn camel:run) 路由没有启动,Camel 一直挂着。这种direct component不就是直接用吗?
谢谢
没挂。您需要在路由之前将消息发送到直接端点。例如,在 java 代码中,通过调用 java 方法从客户端直接调用方法。
如果你想每隔 X 次自动发送一条消息,你可以使用定时器而不是直接发送。
要将消息发送到直接端点(或任何其他 Camel 端点),然后阅读生产者模板。例如入门指南:http://camel.apache.org/walk-through-an-example.html
我可以看到许多 Camel 路由示例都是使用 "direct" 组件启动的。例如:
<camelContext xmlns="http://camel.apache.org/schema/spring">
<route id="myroute">
<from uri="direct:start"/>
<setBody>
<simple>Hello World!</simple>
</setBody>
<log message="${body}"/>
<to uri="mock:result"/>
</route>
</camelContext>
然而,通过 运行 像这样的路由 (mvn camel:run) 路由没有启动,Camel 一直挂着。这种direct component不就是直接用吗? 谢谢
没挂。您需要在路由之前将消息发送到直接端点。例如,在 java 代码中,通过调用 java 方法从客户端直接调用方法。
如果你想每隔 X 次自动发送一条消息,你可以使用定时器而不是直接发送。
要将消息发送到直接端点(或任何其他 Camel 端点),然后阅读生产者模板。例如入门指南:http://camel.apache.org/walk-through-an-example.html