SlideShare a Scribd company logo
1
Introduction
 What is Mule?
 How do you use Mule?
 What are the core Mule concepts?
 Learning mule with File endpoints
2
 Mule is an open-source Enterprise Service
Backbone (ESB)
3
 Folder to folder
 Queue to queue
 Shared memory to shared memory
 Using different types of transports
 In a flexible way
4
 An XML pipeline is a series of operation that are
performed on one or more XML files
 Examples include:
◦ validate
◦ transform
◦ prune (remove nodes)
◦ split (break a single XML file into many files)
◦ merge (join two or more files together)
5
 Focus on specifying "What" not "How"
 Empower business analysis to write machine-
readable specifications
 Hide the "How" behind services with clear
interfaces (SOA)
6
 Mule Manager
 Mule Model
 Universal Message Object (UMO)
 Endpoints
 External Applications
7
 A transport or "provider", is a set of objects that
add support to Mule to handle a specific kind of
transport or protocol
 Examples
◦ the "Email Provider" enables Mule to send and receive
messages via the SMTP, POP and IMAP protocols
8
 A connector is the object that sends and receives
messages on behalf of an endpoint.
 Connectors are bundled as part of specific
transports or providers.
 For example, the FileConnector can read and
write file system files.
9
 A router is the object that do something with
messages once they have been received by a
connector, or prior to being sent out by the
connector
10
 A filter optionally filters incoming or outgoing
messages that are coming into or going out from
a connector.
 For example, the File Provider comes with a
FilenameWildcardFilter that restricts
which files are read by the connector based on
file name patterns. For example only files with
the .xml extension can be routed.
 Filters are used in conjunction with Routers.
11
 A transformer optionally changes incoming or
outgoing messages in some way
 This is usually done to make the message format
useable by a downstream function
 Examples:
◦ the ByteArrayToString transformer converts byte arrays
into String objects.
12
 The nine stages of a
mule event
◦ first 2 – inbound
◦ middle 4 – component
◦ last 2 – outbound
13
Endpoint
(Message Receiver)
Endpoint
(Message Dispatcher)
Inbound Router
Outbound Router
Inbound Transformer
Outbound Transformer
Interceptor
Service Invocation
Interceptor
Inbound
Component
Outbound
Optional Step
 Some event triggers a
message flow
◦ A file being written into a folder
◦ A message arriving on a
message queue
◦ A record in a database
◦ Data written to a socket
14
Endpoint
(Message Dispatcher)
Inbound Router
Outbound Router
Inbound Transformer
Outbound Transformer
Interceptor
Service Invocation
Interceptor
Endpoint
(Message Receiver)
 The inbound router is the fist step in
a message. Functions typically
performed by an inbound router
◦ Filtering
◦ Remove duplicate messages
◦ Matching messages
◦ Aggregation (combining)
◦ Re-sequence data
◦ Forwarding
 See also
◦ IdempotentReceiver
◦ CorrolationAggregator
◦ CorrelationResequencer
15
Endpoint
(Message Dispatcher)
Inbound Router
Outbound Router
Inbound Transformer
Outbound Transformer
Interceptor
Service Invocation
Interceptor
Endpoint
(Message Receiver)
 Used to intercept message
flow into your service
component
 Used trigger monitor/events or
interrupt the flow of the
message
 Example: an authorization
interceptor could ensure that
the current request has the
correct credentials to invoke
the service.
16
Endpoint
(Message Dispatcher)
Inbound Router
Outbound Router
Inbound Transformer
Outbound Transformer
Service Invocation
Interceptor
Endpoint
(Message Receiver)
Interceptor
 If the inbound data is
not in the correct
format for the service
it must be transformed
at this point
17
Endpoint
(Message Receiver)
Endpoint
(Message Dispatcher)
Inbound Router
Outbound Router
Outbound Transformer
Interceptor
Service Invocation
Interceptor
Inbound Transformer
 The actual service is
performed
 In mule, this is generally a
Java object
 Service invocation can also
be a "pass through"
18
Endpoint
(Message Receiver)
Endpoint
(Message Dispatcher)
Inbound Router
Outbound Router
Outbound Transformer
Interceptor
Interceptor
Inbound Transformer
Service Invocation
 Dispatching the data
to all the relevant
endpoints
19
Endpoint
(Message Receiver)
Endpoint
(Message Dispatcher)
Inbound Router
Outbound Transformer
Interceptor
Interceptor
Inbound Transformer
Service Invocation
Outbound Router
 Any transformations that needs
to be done on the message after
a service has been performed on
the message can be executed
before it is put into the endpoint
 See Also
◦ EnvelopeInterceptor
20
Endpoint
(Message Receiver)
Endpoint
(Message Dispatcher)
Inbound Router
Interceptor
Interceptor
Inbound Transformer
Service Invocation
Outbound Router
Outbound Transformer
 Mule has a special way of handling non-happy path processing.
This is called an "Exception Strategy" but is it really just and
exception path and there is very little strategy involved.
 There are three places you can associate an exception strategy
◦ connector
◦ component
◦ model (set for all components in a model)
21
<exception-strategy
className=org.mule.impl.DefaultComponentExceptionStrategy">
<endpoint address="file:///c:/mule-class/error"/>
</exception-strategy>
22
We want all invalid documents to be moved into the
error folder.
<?xml version="1.0" encoding="UTF-8"?>
<Data>
<Element1>Hello World!</Element1>
<Element2>String</Element2>
<Element3>String</Element3>
<DansInvalidDataElement>This is Dans invalid data element</DansInvalidDataElement>
</Data>
23
XML Schema validation will generate an error message
when it gets to the fourth invalid data element:
Given the following XML Schema file:
<outbound-router>
<router className="org.mule.routing.outbound.FilteringXmlMessageSplitter">
<endpoint
address="file:///c:/mule-class/out?outputPattern=$[ORIGINALNAME]"/>
<properties>
<property name="validateSchema" value="true"/>
<property name="externalSchemaLocation"
value="file:///c:/mule-class/labs/07-validate/my-
schema.xsd"/>
</properties>
</router>
</outbound-router>
24
To validate the XML Schema, just add two properties:
1) tell it to validate the document
2) tell it what file to use and where to find it
 Anypoint Platform is a complete integration platform for SOA, REST,
SaaS integration, and APIs. Anypoint Platform provides a
comprehensive set of tools and services, which includes Anypoint
Studio, Mule ESB, and Anypoint Platform’s online access point.
Anypoint Platform’s access point includes access to Runtime Manager,
API development tools, and more.
 Anypoint Platform helps you achieve your integration goals:
 Integrate SaaS and on-premises applications
 Modernize legacy services
 Orchestrate business processes and services
 Design and publish APIs for end customers, B2B, or mobile - APIs can
be in SOA or REST
 Create API proxies to separate implementation from orchestration
 Engage consumers of your API
 Govern APIs with runtime policies
25
26

More Related Content

PPTX
Mule property placeholder
Sashidhar Rao GDS
 
PPTX
File component in mule demo
Sudha Ch
 
PPTX
Choice component in mule demo
Sudha Ch
 
PPTX
Mule concepts connectors
kunal vishe
 
PPTX
Choice component in mule
Rajkattamuri
 
PPTX
Mulesoft file connector
kumar gaurav
 
PPTX
Filter expression in mule
Rajkattamuri
 
PPTX
Using XSLT in Mule
Anirban Sen Chowdhary
 
Mule property placeholder
Sashidhar Rao GDS
 
File component in mule demo
Sudha Ch
 
Choice component in mule demo
Sudha Ch
 
Mule concepts connectors
kunal vishe
 
Choice component in mule
Rajkattamuri
 
Mulesoft file connector
kumar gaurav
 
Filter expression in mule
Rajkattamuri
 
Using XSLT in Mule
Anirban Sen Chowdhary
 

What's hot (11)

PPTX
xslt in mule
Praneethchampion
 
PPTX
Choice router mule
Sindhu VL
 
PPTX
How to get http query parameters in mule
Ramakrishna kapa
 
PPTX
File component in mule
Rajkattamuri
 
PPTX
Mule agent notifications
Shanky Gupta
 
PPTX
For each component in mule
Rajkattamuri
 
PPTX
Mule esb
Khan625
 
PPTX
Mule esb transformers
Mani Rathnam Gudi
 
PPTX
Runing batch job in mule
Son Nguyen
 
PPTX
For each component in mule demo
Sudha Ch
 
PPTX
Message properties component in Mule
Khan625
 
xslt in mule
Praneethchampion
 
Choice router mule
Sindhu VL
 
How to get http query parameters in mule
Ramakrishna kapa
 
File component in mule
Rajkattamuri
 
Mule agent notifications
Shanky Gupta
 
For each component in mule
Rajkattamuri
 
Mule esb
Khan625
 
Mule esb transformers
Mani Rathnam Gudi
 
Runing batch job in mule
Son Nguyen
 
For each component in mule demo
Sudha Ch
 
Message properties component in Mule
Khan625
 
Ad

Viewers also liked (13)

PPTX
Microcomputadora
heidi saguach
 
PPTX
Evaluation q 7
Will Kearse
 
PPTX
3 Elements to Setting Goals By: Dustin Hatfield
Dustin Hatfield
 
PPTX
Reforma Tributaria ADF
Cristian Martinez Sanchez
 
DOCX
The Rag Doll
Suzanne Lambert
 
PDF
Angeles cobo segundo parcial
Angeles Cobo
 
PPTX
Фестиваль мовних таборів
Julja Chernenko
 
PPTX
2 кл
Julja Chernenko
 
PDF
Ppt ch06
niruttisai
 
PPTX
Paguina web
Liseth Useche
 
PPTX
"Город на віконці"
Julja Chernenko
 
PPTX
10 клас
Julja Chernenko
 
PDF
Drugi rok Zwinnej Łodzi
Radoslaw Lont
 
Microcomputadora
heidi saguach
 
Evaluation q 7
Will Kearse
 
3 Elements to Setting Goals By: Dustin Hatfield
Dustin Hatfield
 
Reforma Tributaria ADF
Cristian Martinez Sanchez
 
The Rag Doll
Suzanne Lambert
 
Angeles cobo segundo parcial
Angeles Cobo
 
Фестиваль мовних таборів
Julja Chernenko
 
Ppt ch06
niruttisai
 
Paguina web
Liseth Useche
 
"Город на віконці"
Julja Chernenko
 
10 клас
Julja Chernenko
 
Drugi rok Zwinnej Łodzi
Radoslaw Lont
 
Ad

Similar to Mule introduction (20)

PPT
Overview of Mule
AbdulImrankhan7
 
PPT
ESB introduction using Mule
Khasim Cise
 
PPT
Mule overview
Rajkattamuri
 
PPT
Mule overview
Sandhya Sandy
 
PPT
Mulesoftppt
ennVee TechnoGroup Inc.
 
PPT
Mule enterprise service bus
Thang Loi
 
PPT
Overview of Mule
mdfkhan625
 
PPTX
Mule overview
nikitjain2011
 
PPT
Mule overview
Praneethchampion
 
PPT
Mule Overview
AbdulImrankhan7
 
PPT
Mule overview
Mohammed625
 
PPT
Mule overview
F K
 
PPT
Mulesoft ppt
Achyuta Lakshmi
 
PPT
Mule esb
Naveen Chintala
 
PPT
Mule overview
sssatya
 
PPT
Mule esb intoduction
Vamsi Krishna
 
PPT
mule-overview.ppt
NalamalpuBhakthavats
 
PPT
Mule esb presentation 2015
Nagesh Penumarthy
 
PPTX
Core concepts - mule
Sindhu VL
 
Overview of Mule
AbdulImrankhan7
 
ESB introduction using Mule
Khasim Cise
 
Mule overview
Rajkattamuri
 
Mule overview
Sandhya Sandy
 
Mule enterprise service bus
Thang Loi
 
Overview of Mule
mdfkhan625
 
Mule overview
nikitjain2011
 
Mule overview
Praneethchampion
 
Mule Overview
AbdulImrankhan7
 
Mule overview
Mohammed625
 
Mule overview
F K
 
Mulesoft ppt
Achyuta Lakshmi
 
Mule esb
Naveen Chintala
 
Mule overview
sssatya
 
Mule esb intoduction
Vamsi Krishna
 
mule-overview.ppt
NalamalpuBhakthavats
 
Mule esb presentation 2015
Nagesh Penumarthy
 
Core concepts - mule
Sindhu VL
 

Recently uploaded (20)

PPTX
How to Apply for a Job From Odoo 18 Website
Celine George
 
PPTX
Gupta Art & Architecture Temple and Sculptures.pptx
Virag Sontakke
 
PDF
BÀI TẬP TEST BỔ TRỢ THEO TỪNG CHỦ ĐỀ CỦA TỪNG UNIT KÈM BÀI TẬP NGHE - TIẾNG A...
Nguyen Thanh Tu Collection
 
PDF
What is CFA?? Complete Guide to the Chartered Financial Analyst Program
sp4989653
 
PPTX
20250924 Navigating the Future: How to tell the difference between an emergen...
McGuinness Institute
 
PPTX
Sonnet 130_ My Mistress’ Eyes Are Nothing Like the Sun By William Shakespear...
DhatriParmar
 
PPTX
HISTORY COLLECTION FOR PSYCHIATRIC PATIENTS.pptx
PoojaSen20
 
PPTX
Artificial-Intelligence-in-Drug-Discovery by R D Jawarkar.pptx
Rahul Jawarkar
 
PDF
The Minister of Tourism, Culture and Creative Arts, Abla Dzifa Gomashie has e...
nservice241
 
PPTX
Care of patients with elImination deviation.pptx
AneetaSharma15
 
PPTX
INTESTINALPARASITES OR WORM INFESTATIONS.pptx
PRADEEP ABOTHU
 
PPTX
Cleaning Validation Ppt Pharmaceutical validation
Ms. Ashatai Patil
 
PPTX
Command Palatte in Odoo 18.1 Spreadsheet - Odoo Slides
Celine George
 
PDF
Virat Kohli- the Pride of Indian cricket
kushpar147
 
PPTX
CDH. pptx
AneetaSharma15
 
PPTX
A Smarter Way to Think About Choosing a College
Cyndy McDonald
 
PPTX
PROTIEN ENERGY MALNUTRITION: NURSING MANAGEMENT.pptx
PRADEEP ABOTHU
 
PDF
Antianginal agents, Definition, Classification, MOA.pdf
Prerana Jadhav
 
DOCX
pgdei-UNIT -V Neurological Disorders & developmental disabilities
JELLA VISHNU DURGA PRASAD
 
PDF
Review of Related Literature & Studies.pdf
Thelma Villaflores
 
How to Apply for a Job From Odoo 18 Website
Celine George
 
Gupta Art & Architecture Temple and Sculptures.pptx
Virag Sontakke
 
BÀI TẬP TEST BỔ TRỢ THEO TỪNG CHỦ ĐỀ CỦA TỪNG UNIT KÈM BÀI TẬP NGHE - TIẾNG A...
Nguyen Thanh Tu Collection
 
What is CFA?? Complete Guide to the Chartered Financial Analyst Program
sp4989653
 
20250924 Navigating the Future: How to tell the difference between an emergen...
McGuinness Institute
 
Sonnet 130_ My Mistress’ Eyes Are Nothing Like the Sun By William Shakespear...
DhatriParmar
 
HISTORY COLLECTION FOR PSYCHIATRIC PATIENTS.pptx
PoojaSen20
 
Artificial-Intelligence-in-Drug-Discovery by R D Jawarkar.pptx
Rahul Jawarkar
 
The Minister of Tourism, Culture and Creative Arts, Abla Dzifa Gomashie has e...
nservice241
 
Care of patients with elImination deviation.pptx
AneetaSharma15
 
INTESTINALPARASITES OR WORM INFESTATIONS.pptx
PRADEEP ABOTHU
 
Cleaning Validation Ppt Pharmaceutical validation
Ms. Ashatai Patil
 
Command Palatte in Odoo 18.1 Spreadsheet - Odoo Slides
Celine George
 
Virat Kohli- the Pride of Indian cricket
kushpar147
 
CDH. pptx
AneetaSharma15
 
A Smarter Way to Think About Choosing a College
Cyndy McDonald
 
PROTIEN ENERGY MALNUTRITION: NURSING MANAGEMENT.pptx
PRADEEP ABOTHU
 
Antianginal agents, Definition, Classification, MOA.pdf
Prerana Jadhav
 
pgdei-UNIT -V Neurological Disorders & developmental disabilities
JELLA VISHNU DURGA PRASAD
 
Review of Related Literature & Studies.pdf
Thelma Villaflores
 

Mule introduction

  • 2.  What is Mule?  How do you use Mule?  What are the core Mule concepts?  Learning mule with File endpoints 2
  • 3.  Mule is an open-source Enterprise Service Backbone (ESB) 3
  • 4.  Folder to folder  Queue to queue  Shared memory to shared memory  Using different types of transports  In a flexible way 4
  • 5.  An XML pipeline is a series of operation that are performed on one or more XML files  Examples include: ◦ validate ◦ transform ◦ prune (remove nodes) ◦ split (break a single XML file into many files) ◦ merge (join two or more files together) 5
  • 6.  Focus on specifying "What" not "How"  Empower business analysis to write machine- readable specifications  Hide the "How" behind services with clear interfaces (SOA) 6
  • 7.  Mule Manager  Mule Model  Universal Message Object (UMO)  Endpoints  External Applications 7
  • 8.  A transport or "provider", is a set of objects that add support to Mule to handle a specific kind of transport or protocol  Examples ◦ the "Email Provider" enables Mule to send and receive messages via the SMTP, POP and IMAP protocols 8
  • 9.  A connector is the object that sends and receives messages on behalf of an endpoint.  Connectors are bundled as part of specific transports or providers.  For example, the FileConnector can read and write file system files. 9
  • 10.  A router is the object that do something with messages once they have been received by a connector, or prior to being sent out by the connector 10
  • 11.  A filter optionally filters incoming or outgoing messages that are coming into or going out from a connector.  For example, the File Provider comes with a FilenameWildcardFilter that restricts which files are read by the connector based on file name patterns. For example only files with the .xml extension can be routed.  Filters are used in conjunction with Routers. 11
  • 12.  A transformer optionally changes incoming or outgoing messages in some way  This is usually done to make the message format useable by a downstream function  Examples: ◦ the ByteArrayToString transformer converts byte arrays into String objects. 12
  • 13.  The nine stages of a mule event ◦ first 2 – inbound ◦ middle 4 – component ◦ last 2 – outbound 13 Endpoint (Message Receiver) Endpoint (Message Dispatcher) Inbound Router Outbound Router Inbound Transformer Outbound Transformer Interceptor Service Invocation Interceptor Inbound Component Outbound Optional Step
  • 14.  Some event triggers a message flow ◦ A file being written into a folder ◦ A message arriving on a message queue ◦ A record in a database ◦ Data written to a socket 14 Endpoint (Message Dispatcher) Inbound Router Outbound Router Inbound Transformer Outbound Transformer Interceptor Service Invocation Interceptor Endpoint (Message Receiver)
  • 15.  The inbound router is the fist step in a message. Functions typically performed by an inbound router ◦ Filtering ◦ Remove duplicate messages ◦ Matching messages ◦ Aggregation (combining) ◦ Re-sequence data ◦ Forwarding  See also ◦ IdempotentReceiver ◦ CorrolationAggregator ◦ CorrelationResequencer 15 Endpoint (Message Dispatcher) Inbound Router Outbound Router Inbound Transformer Outbound Transformer Interceptor Service Invocation Interceptor Endpoint (Message Receiver)
  • 16.  Used to intercept message flow into your service component  Used trigger monitor/events or interrupt the flow of the message  Example: an authorization interceptor could ensure that the current request has the correct credentials to invoke the service. 16 Endpoint (Message Dispatcher) Inbound Router Outbound Router Inbound Transformer Outbound Transformer Service Invocation Interceptor Endpoint (Message Receiver) Interceptor
  • 17.  If the inbound data is not in the correct format for the service it must be transformed at this point 17 Endpoint (Message Receiver) Endpoint (Message Dispatcher) Inbound Router Outbound Router Outbound Transformer Interceptor Service Invocation Interceptor Inbound Transformer
  • 18.  The actual service is performed  In mule, this is generally a Java object  Service invocation can also be a "pass through" 18 Endpoint (Message Receiver) Endpoint (Message Dispatcher) Inbound Router Outbound Router Outbound Transformer Interceptor Interceptor Inbound Transformer Service Invocation
  • 19.  Dispatching the data to all the relevant endpoints 19 Endpoint (Message Receiver) Endpoint (Message Dispatcher) Inbound Router Outbound Transformer Interceptor Interceptor Inbound Transformer Service Invocation Outbound Router
  • 20.  Any transformations that needs to be done on the message after a service has been performed on the message can be executed before it is put into the endpoint  See Also ◦ EnvelopeInterceptor 20 Endpoint (Message Receiver) Endpoint (Message Dispatcher) Inbound Router Interceptor Interceptor Inbound Transformer Service Invocation Outbound Router Outbound Transformer
  • 21.  Mule has a special way of handling non-happy path processing. This is called an "Exception Strategy" but is it really just and exception path and there is very little strategy involved.  There are three places you can associate an exception strategy ◦ connector ◦ component ◦ model (set for all components in a model) 21
  • 23. <?xml version="1.0" encoding="UTF-8"?> <Data> <Element1>Hello World!</Element1> <Element2>String</Element2> <Element3>String</Element3> <DansInvalidDataElement>This is Dans invalid data element</DansInvalidDataElement> </Data> 23 XML Schema validation will generate an error message when it gets to the fourth invalid data element: Given the following XML Schema file:
  • 24. <outbound-router> <router className="org.mule.routing.outbound.FilteringXmlMessageSplitter"> <endpoint address="file:///c:/mule-class/out?outputPattern=$[ORIGINALNAME]"/> <properties> <property name="validateSchema" value="true"/> <property name="externalSchemaLocation" value="file:///c:/mule-class/labs/07-validate/my- schema.xsd"/> </properties> </router> </outbound-router> 24 To validate the XML Schema, just add two properties: 1) tell it to validate the document 2) tell it what file to use and where to find it
  • 25.  Anypoint Platform is a complete integration platform for SOA, REST, SaaS integration, and APIs. Anypoint Platform provides a comprehensive set of tools and services, which includes Anypoint Studio, Mule ESB, and Anypoint Platform’s online access point. Anypoint Platform’s access point includes access to Runtime Manager, API development tools, and more.  Anypoint Platform helps you achieve your integration goals:  Integrate SaaS and on-premises applications  Modernize legacy services  Orchestrate business processes and services  Design and publish APIs for end customers, B2B, or mobile - APIs can be in SOA or REST  Create API proxies to separate implementation from orchestration  Engage consumers of your API  Govern APIs with runtime policies 25
  • 26. 26