Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration...
Transcript of Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration...
![Page 1: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/1.jpg)
Enterprise Integration with Spring Integration
Agim EmruliSpringSource8100
![Page 2: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/2.jpg)
2
Presentation Goal
Learn how Spring Integration helps to solve common Enterprise Integration challenges
![Page 3: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/3.jpg)
3
IntegrationChallenges
![Page 4: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/4.jpg)
4System Failures
![Page 5: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/5.jpg)
5
IntolerantSystems
![Page 6: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/6.jpg)
Enterprise Integration Patterns
6
![Page 7: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/7.jpg)
Pattern Catalog Overview 7
Message Transformation
Content FIlter
Content
Enricher
Envelope
WrapperMessage
Translator
Normalizer
Claim Check
Message Construction
C
Command
Message
A B
Correlation ID
D
Document
Message
E
Event
Message
Message
Message
Sequence
Request
Reply
Return
Address
Message Routing
Aggregator
Content Based
Router
Composed
Message
Message
FIlter
Message
Router
Recipient List
Process
Manager
Splitter
![Page 8: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/8.jpg)
8
How does Spring help ?
![Page 9: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/9.jpg)
9
Spring Big Picture
Inversion of Control
Dependency Injection
Aspect oriented
Programming
Enterprise Service
Abstraction
![Page 10: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/10.jpg)
10
Focus on Business domain
![Page 11: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/11.jpg)
Spring Powered Applications11
Application
Maintain-able Flexible
RobustTestable
![Page 12: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/12.jpg)
Layered Architecture 12
![Page 13: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/13.jpg)
Layered Architecture 12
Domain Objects
![Page 14: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/14.jpg)
Layered Architecture 12
Database Email Messaging
Domain Objects
![Page 15: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/15.jpg)
Layered Architecture 12
Database Email Messaging
Infrastructure
Domain Objects
![Page 16: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/16.jpg)
Layered Architecture 12
Database Email Messaging
Infrastructure
Domain ObjectsData Access
![Page 17: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/17.jpg)
Layered Architecture 12
Database Email Messaging
Infrastructure
Domain Objects
Services
Data Access
![Page 18: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/18.jpg)
AOP
Layered Architecture 12
Database Email Messaging
Infrastructure
Domain Objects
Services
Data Access
![Page 19: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/19.jpg)
Layered Architecture13
Spring Application
![Page 20: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/20.jpg)
Layered Architecture13
Spring Application
MVC
![Page 21: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/21.jpg)
Layered Architecture13
Spring Application
RMIMVC
![Page 22: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/22.jpg)
Layered Architecture13
Spring Application
Webservice RMIMVC
![Page 23: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/23.jpg)
Layered Architecture13
Spring Application
Webservice RMIMVC
Batch
![Page 24: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/24.jpg)
Layered Architecture13
Spring Application
Webservice RMIMVC
Batch JMS
![Page 25: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/25.jpg)
Event Driven Architecture14
Event
Framework
Application
![Page 26: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/26.jpg)
Spring JMS Support15
<jms:listener-container transaction-manager="txManager"> <jms:listener ref="orderService" method="order" destination="queue.orders" response-destination="queue.confirmation"/></jms:listener-container>
![Page 27: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/27.jpg)
Spring JMS Support15
<jms:listener-container transaction-manager="txManager"> <jms:listener ref="orderService" method="order" destination="queue.orders" response-destination="queue.confirmation"/></jms:listener-container>
public class OrderService { public OrderConfirmation order(Order o) {..}
}
![Page 28: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/28.jpg)
16
Introducing Spring Integration
![Page 29: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/29.jpg)
17
Goals
![Page 30: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/30.jpg)
18
Reuse ServiceLayer
![Page 31: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/31.jpg)
19
Incremental Extension
![Page 32: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/32.jpg)
Spring Integration Architecture20
![Page 33: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/33.jpg)
Spring Integration Architecture20
Services
![Page 34: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/34.jpg)
Spring Integration Architecture20
Services
Webservice
![Page 35: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/35.jpg)
Spring Integration Architecture20
Services
Webservice File
![Page 36: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/36.jpg)
Spring Integration Architecture20
Services
Webservice File
![Page 37: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/37.jpg)
Spring Integration Architecture20
Services
Webservice File
Transformer
![Page 38: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/38.jpg)
Spring Integration Architecture20
Services
Webservice
Router
File
Transformer
![Page 39: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/39.jpg)
21
MessageConstruction
![Page 40: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/40.jpg)
Message Structure22
Message HeaderSequence Number
Sequence SizeExpiration Date
Correlation Identifier
Message Body
C
Command
Message
D
Document
Message
E
Event
Message
![Page 41: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/41.jpg)
Message Interface23
public interface Message<T> {
MessageHeaders getHeaders();
T getPayload();}
![Page 42: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/42.jpg)
24Message Headers
![Page 43: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/43.jpg)
24
MessageHeaders headers = message.getHeaders();
String value = headers.get("key", String.class);
Object id = headers.getId();
Long timestamp = headers.getTimestamp();
MessagePriority priority = headers.getPriority();
Message Headers
![Page 44: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/44.jpg)
25Message Builder
![Page 45: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/45.jpg)
25
Message<String> message = MessageBuilder.withPayload("test") .setHeader("foo", 123) .setPriority(MessagePriority.HIGHEST) .build();
Message<String> copy = MessageBuilder.fromMessage(message) .setHeader("foo", 456) .setHeaderIfAbsent("bar", 789) .build();
Message Builder
![Page 46: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/46.jpg)
26Channels And Endpoints
![Page 47: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/47.jpg)
Message Channel27
Message Endpoint
Message Message
ChannelMessage Endpoint
![Page 48: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/48.jpg)
Direct Channels28
Event-Driven
ConsumerMessage Endpoint Channel
![Page 49: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/49.jpg)
Direct Channels28
Event-Driven
ConsumerMessage Endpoint Channel
<channel id="sync-p2p" />
![Page 50: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/50.jpg)
Queue Channel29
Message Endpoint ChannelPolling
Consumer
![Page 51: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/51.jpg)
Queue Channel29
Message Endpoint ChannelPolling
Consumer
<channel id="async-p2p"> <queue capacity="50" /></channel>
![Page 52: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/52.jpg)
Publish-Subscribe Channel30
Message EndpointPublish Subscribe
Channel
Event-Driven
Consumer
Event-Driven
Consumer
![Page 53: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/53.jpg)
Publish-Subscribe Channel30
Message EndpointPublish Subscribe
Channel
Event-Driven
Consumer
Event-Driven
Consumer
<publish-subscribe-channel id="pubsub" />
![Page 54: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/54.jpg)
Priority Channel31
Message Endpoint ChannelPolling
Consumer
Resequencer
![Page 55: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/55.jpg)
Priority Channel31
Message Endpoint ChannelPolling
Consumer
Resequencer
<channel id="priorityChannel"> <priority-queue comparator="someComp" /></channel>
![Page 56: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/56.jpg)
32Message Transformation
![Page 57: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/57.jpg)
Message Translator33
Channel ChannelMessage Translator
![Page 58: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/58.jpg)
Message Translator33
<transformer input-channel="input" output-channel="output" ref="transformer" method="transform"/>
Channel ChannelMessage Translator
![Page 59: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/59.jpg)
Annotation Based Message Translator34
@MessageEndpointpublic class MessageTransformer{ @Transformer(inputChannel="in",
outputChannel="out") public LoanRequest transform(Loan loan){ return ...; }}
![Page 60: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/60.jpg)
35Service Activator
![Page 61: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/61.jpg)
36
Service Activator
Channel
ChannelMessage Endpoint
Service Activator
Message Endpoint
![Page 62: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/62.jpg)
Service Activator37
<channel id="requests"/><channel id="quotes"/>
<service-activator input-channel="requests" ref="loanBroker" method="processRequest" output-channel="quotes"/>
<beans:bean id="loanBroker" class="example.LoanBroker"/>
![Page 63: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/63.jpg)
Annotation Based Service Activator38
@MessageEndpointpublic class LoanBroker {
@ServiceActivator(inputChannel="x", outputChannel="y") public LoanQuote processRequest(
LoanRequest request) { LoanQuote quote ...; return quote; }}
![Page 64: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/64.jpg)
Polling and Transactions39
<service-activator ref="loanBroker" method="processRequest" input-channel="requests" output-channel="quotes"> <poller task-executor="pool1"> <interval-trigger interval="5000"/> <transactional propagation="REQUIRES_NEW"/> </poller></service-activator><pool-executor id="pool1" max-size="25"/><beans:bean id="transactionManager" ... />
![Page 65: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/65.jpg)
40Message Routing
![Page 66: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/66.jpg)
Content Based Router41
Standard Service
Channel
VIP Service Channel
Channel Content Based Router
![Page 67: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/67.jpg)
MethodInvokingRouter42
<channel id="even"/>
<channel id="odd"/>
<router ref="parityResolver" input-channel="numbers"/>
![Page 68: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/68.jpg)
MethodInvokingRouter42
<channel id="even"/>
<channel id="odd"/>
<router ref="parityResolver" input-channel="numbers"/>
@Routerpublic String getParity(int i) { return (i % 2 == 0) ? "even" : "odd";}
![Page 69: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/69.jpg)
PayloadtypeRouter43
Channel
String Channel
Integer Channel
Content Based Router
![Page 70: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/70.jpg)
PayloadtypeRouter43
typeMap .put(String.class, stringChannel);typeMap.put(Integer.class, integerChannel);
PayloadTypeRouter router = new PayloadTypeRouter();router.setPayloadTypeChannelMap(typeMap);
router.handleMessage(new StringMessage("test")); router.handleMessage(new GenericMessage(123));
Channel
String Channel
Integer Channel
Content Based Router
![Page 71: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/71.jpg)
ReceipientListRouter44
Channel
Channel
Recipient ListChannel
![Page 72: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/72.jpg)
ReceipientListRouter44
channels.add(channel1);channels.add(channel2);
RecipientListRouter router = new RecipientListRouter();router.setChannels(channels);Message<String> message = new StringMessage("test");
router.handleMessage(message);
Channel
Channel
Recipient ListChannel
![Page 73: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/73.jpg)
Splitter And Aggregator45
Channel
ChannelAggregator
Splitter
![Page 74: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/74.jpg)
Splitter And Aggregator46
@Splitterpublic List<OrderItem> splitOrder(PurchaseOrder order, @Header("customerId") String customerId) { // split the purchase order into order items…}
![Page 75: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/75.jpg)
Splitter And Aggregator46
@Splitterpublic List<OrderItem> splitOrder(PurchaseOrder order, @Header("customerId") String customerId) { // split the purchase order into order items…}
@Aggregatorpublic PurchaseOrder aggregateOrder(List<OrderItem> items) { // aggregate the items into a single order object...}
![Page 76: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/76.jpg)
47
ChannelAdapter
![Page 77: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/77.jpg)
Channel Adapters48
External System ChannelChannel Adapter
Message
Inbound
![Page 78: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/78.jpg)
Channel Adapters48
External System ChannelChannel Adapter
Message
Inbound
External SystemChannel Channel Adapter
Message
Outbound
![Page 79: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/79.jpg)
File Adapter49
<file:inbound-channel-adapter channel="filesIn" directory="${java.io.tmpdir}/test-input"> <poller max-messages-per-poll="5"> <cron-trigger expression="*/10 * * * * MON-FRI"/> </poller></file:inbound-channel-adapter>
<file:outbound-channel-adapter channel="filesOut" directory="${java.io.tmpdir}/test-output"/>
![Page 80: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/80.jpg)
JMS Adapter50
<jms:inbound-channel-adapter channel="input" connection-factory="connectionFactory" destination-name="sourceQueueName"/>
<jms:outbound-channel-adapter channel="output" destination="targetQueue"/>
<jms:inbound-gateway request-channel="inRequests" destination="inboundRequestQueue"/>
<jms:outbound-gateway request-channel="outRequests" reply-channel="replies" jms-queue="outQueue"/>
![Page 81: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/81.jpg)
Method Invoking Adapter51
<channel id="channel"/>
<inbound-channel-adapter channel="channel" ref="reader" method="read"> <poller max-messages-per-poll="1"> <interval-trigger interval="1000"/> </poller></inbound-channel-adapter>
<outbound-channel-adapter channel="channel" ref="writer" method="write"/>
![Page 82: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/82.jpg)
Webservice Adapter52
<ws:outbound-gateway uri="http://..." marshaller="someMarshaller" unmarshaller="someMarshaller" request-channel="req" reply-channel="rep"/>
<ws:inbound-gateway request-channel="req" reply-channel="rep" marshaller="someMarshaller" unmarshaller="someMarshaller" />
![Page 83: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/83.jpg)
Other Adapters53
> HTTP> Mail> RMI > springsource.org/extensions
![Page 85: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/85.jpg)
55
THANK YOU!
![Page 86: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/86.jpg)
Picture Credits56
http://www.flickr.com/photos/scraplab/2612334635/
http://www.flickr.com/photos/mylifestory/527847004/
http://www.flickr.com/photos/alex-s/116511016/
http://www.flickr.com/photos/jdan/2324469981/
![Page 87: Enterprise Integration with Spring Integration · Enterprise Integration with Spring Integration Agim Emruli SpringSource 8100. 2 ... System Failures 4. 5 Intolerant Systems. Enterprise](https://reader030.fdocuments.in/reader030/viewer/2022040116/5ec9e241134a521b41312a1a/html5/thumbnails/87.jpg)
Picture Credits57
http://www.flickr.com/photos/global-jet/2125557004/