The direct: component provides direct, synchronous invocation of any consumers when a producer sends a message exchange. This endpoint can be used to connect existing routes or if a client in the same JVM as the router wants to access the routes.
![]() | Asynchronous |
|---|---|
The Seda component provides asynchronous invocation of any consumers when a producer sends a message exchange. |
| Name | Default Value | Description |
|---|---|---|
| allowMultipleConsumers | true | If set to false, then when a second consumer is started on the endpoint, an IllegalStateException is thrown |
In the route below we use the direct component to link the two routes together:
from("activemq:queue:order.in").to("bean:orderServer?method=validate").to("direct:processOrder");
from("direct:processOrder").to("bean:orderService?method=process").to("activemq:queue:order.out");
And the sample using spring DSL:
<route>
<from uri="activemq:queue:order.in"/>
<to uri="bean:orderService?method=validate"/>
<to uri="direct:processOrder"/>
</route>
<route>
<from uri="direct:processOrder"/>
<to uri="bean:orderService?method=process"/>
<to uri="activemq:queue:order.out"/>
</route>
See also samples from the Seda component, how they can be used together.