Message Channels
While Message
represents a
container for information data, the channel represents the location where
it is being sent. Simply put, the message ends up at a prespecified
address called channel
before being used by someone
else. The sender and receiver will be encoded with the information of the
channels. See Figure 2-2, depicting the Message
channels. In Spring Integration,
the channel is represented by a Message
Channel
interface.
Figure 2-2. Message Channels
Declaring Channels
Spring Integration provides a declarative model to create channels so we don’t have to instantiate channels using Java classes. Declaring a channel is simple and straightforward, as shown in the following snippet:
<beans
xmlns:int="http://www.springframework.org/schema/integration"
xsi:schemaLocation="http://www.springframework.org/schema/integration
http://www.springframework.org/schema/integration/spring-integration-2.1.xsd"
...
>
// declaratively creating a channel
<int:channel id="newAccounts">
</beans>
Note that since the channels, along with other messaging
components, are defined in the integration
XML namespace, please make
sure your XML file consists of the above namespaces.
Out of the box, the framework provides a few concrete
implementations, such as QueueChannel
, PriorityChannel
, and RendezvousChannel
. Although there are a few differences among all the channel implementations, the underlying ...
Get Just Spring Integration now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.