Endpoints

Endpoints are basically components that consume messages from an input channel and deliver to an output channel. They may only consume messages from an input channel or only produce messages to an output channel. They are the crucial pieces that combine our business logic with integration specifications. The message endpoints are created declaratively so that applications concentrate on their business logic alone.

The Framework provides several out-of-the-box endpoints such as Transformers, Splitters, Filters, Routers, etc. It also provides endpoints (adapters) that connect to external systems like JMS, FTP, JDBC, Twitter, etc. You can also extend and create an Endpoint if you have a new requirement for an adapter fetching data from the moon.

We will be discussing the endpoints in later chapters, but if you are eager to see endpoints in action, here’s an example of declaring a Service Activator endpoint.

Service Activator Endpoint Example

A Service Activator is a generic endpoint that invokes a method on a bean when a message arrives at an input channel. Declaration of the endpoint is shown in the following snippet:

<int:service-activator input-channel="positions-channel"
                       ref="newPositionProcessor" 
                       method="processNewPosition">
</int:service-activator>

// bean to be invoked
<bean id="newPositionProcessor" class="com.madhusudhan.jsi.basics.NewPositionProcessor" />

The service-activator endpoint picks up a message as soon as it arrives on the positions-channel and calls the processNewPosition ...

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.