SlideShare a Scribd company logo
Send email attachment using
SMTP in Mule ESB
Presented by : Ravi Mishra
What is Mule ESB ?
 Mule ESB is a lightweight Java-based
enterprise service bus (ESB) and
integration platform that allows
developers to connect applications
together quickly and easily, enabling
them to exchange data. Mule ESB
enables easy integration of existing
systems, regardless of the different
technologies that the applications use,
including JMS, Web Services, JDBC,
HTTP, and more.
 This example shows how we can send email
attachment using SMTP connector to self or
another email. We simply put a file in a source
directory and Mule will read the file from the
source directory. Using Mule ESB it’s very easy
to read the file from a location. If we had to read
the file using manual coding then we had to write
many lines of code. But using Mule ESB we just
simply put a file in a directory and let the Mule
know the file path and Mule does the rest of the
thing. You can put any kind of file to the source
for reading. The file that we put into a source
directory will be an attachment to the intended
recipient’s mail address. So finally when we will
see the file as an attachment in the mailbox.
What is Attachment
transformer ?
 Attachment transformer lets us attach
a file or document which will be sent to
the email address.
What is SMTP connector ?
 The SMTP endpoint allows Mule
messages to be sent as email or email
attachments with the Simple Mail
Transfer Protocol (SMTP) using Java
mail API.
Prerequisites
 Mule Studio 3.5.1
JDK 1.6
Maven 3
Mule Runtime 3.5.0 CE
Knowledge of XML
 Open Mule Studio and create a mule project.
Go to File->New->Mule Project. Now enter
the Project Name, selectRuntime – Mule
Server, check the check box for Use Maven.
Now enter the following information
 Group Id: your Mail(ex. gmail.com)
Artifact Id: project name – file-
attachment(automatically populated when
project name is getting typed)
V
 Click Next and verify project Location and
JRE/JDK are set correctly. Click
Finishersion: Mule studio generates default
 Now drag and drop the elements from right
side of the Mule studio as shown below in
the picture.
Send email attachment using smtp in mule esb
Browse and select the path from where a file will be read for an attachment.
Logger component properties
 File to String transformer properties
 File-to-Strong transformer just transforms
the file object to human readable string
format. We will not set any property for this
element
Attachment transformer properties
 Using attachment transformer we can set
payload from previous flow as an
attachment. We have to select Content
Type, operation as Set Attachment, Name,
Value
 SMTP connector properties
For SMTP connector we have to input email host, user name, password, port
under Basic Settings and To Address, From Address, Subject under Email
Information.
 The whole XML file of entire flow
 <?xml version="1.0" encoding="UTF-8"?>

 <mule xmlns:smtp="http://www.mulesoft.org/schema/mule/smtp"
 xmlns:file="http://www.mulesoft.org/schema/mule/file" xmlns="http://www.mulesoft.org/schema/mule/core"
 xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
 xmlns:spring="http://www.springframework.org/schema/beans" version="CE-3.5.0"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-current.xsd
 http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
 http://www.mulesoft.org/schema/mule/file http://www.mulesoft.org/schema/mule/file/current/mule-file.xsd
 http://www.mulesoft.org/schema/mule/smtp http://www.mulesoft.org/schema/mule/smtp/current/mule-smtp.xsd">
 <flow name="file-attachmentFlow1" doc:name="file-attachmentFlow1">
 <file:inbound-endpoint path="D:AnypointWorkspacesource"
 responseTimeout="10000" doc:name="File" />
 <logger message="#[payload]" level="INFO" doc:name="Logger" />
 <file:file-to-string-transformer
 doc:name="File to String" />
 <logger message="#[payload]" level="INFO" doc:name="Logger" />
 <set-attachment attachmentName="attachment" value="#[payload]"
 contentType="text/plain" doc:name="Attachment" />
 <logger message="#[payload]" level="INFO" doc:name="Logger" />
 <smtp:outbound-endpoint host="mail.domain.com"
 user="emailAddress@domain.com" password="password" to="emailAddress@domain.com"
 from="emailAddress@domain.com" subject="Test Email" responseTimeout="10000"
 doc:name="SMTP" />
 <logger message="#[payload]" level="INFO" doc:name="Logger" />
 </flow>
 </mule>
 Now create a text file called file-
attachment.txt and put it under selected path,
i.e., as per the above XML the file path
is D:AnypointWorkspacesource.
 Do right-click on file-attachment.xml and
click on Run As -> Mule Application with
Maven. Once the application up and running
you will get the console output and email
attachment in your mailbox where you have
sent the email.
 Output in console
 INFO 2015-03-05 09:25:46,372 [[file-
attachment].connector.file.mule.default.receiver.01]
org.mule.transport.file.FileMessageReceiver: Lock obtained on file:
D:AnypointWorkspacesourcefile-attachment.txt
 INFO 2015-03-05 09:25:46,404 [[file-attachment].file-
attachmentFlow1.stage1.02] org.mule.api.processor.LoggerMessageProcessor:
org.mule.transport.file.ReceiverFileInputStream@6a150e
 INFO 2015-03-05 09:25:46,406 [[file-attachment].file-
attachmentFlow1.stage1.02] org.mule.api.processor.LoggerMessageProcessor:
This is a file content
 INFO 2015-03-05 09:25:46,407 [[file-attachment].file-
attachmentFlow1.stage1.02] org.mule.api.processor.LoggerMessageProcessor:
This is a file content
 INFO 2015-03-05 09:25:46,419 [[file-attachment].file-
attachmentFlow1.stage1.02] org.mule.api.processor.LoggerMessageProcessor:
This is a file content
 INFO 2015-03-05 09:25:46,422 [[file-
attachment].connector.smtp.mule.default.dispatcher.01]
org.mule.transport.service.DefaultTransportServiceDescriptor: Loading default
outbound transformer:
org.mule.transport.email.transformers.ObjectToMimeMessage
 INFO 2015-03-05 09:25:46,428 [[file-
attachment].connector.smtp.mule.default.dispatcher.01]
org.mule.lifecycle.AbstractLifecycleManager: Initialising:
'connector.smtp.mule.default.dispatcher.1213248'. Object is:
SmtpMessageDispatcher
 Click on the attachment. You will see the
below output in the browser.

More Related Content

What's hot (18)

PPTX
How muleworks
Khadhar Koneti
 
PPTX
Mule soa
D.Rajesh Kumar
 
PPTX
Soap in mule
D.Rajesh Kumar
 
PPTX
Vm component in mule demo
Sudha Ch
 
PPTX
Mule enterprise service introduction
Son Nguyen
 
PPTX
Mule soa
Son Nguyen
 
PPTX
Mule esb mule message
sathyaraj Anand
 
PPTX
Send email attachment using smtp in mule esb
Praneethchampion
 
PPTX
Soap request in mule
Praneethchampion
 
PPTX
Core concepts in mule
Sindhu VL
 
PPTX
Design flows in mule
Sindhu VL
 
PPTX
Webservice vm in mule
Praneethchampion
 
PPTX
Mule velocity
Praneethchampion
 
PPTX
Connectors in mule
Sindhu VL
 
PPTX
Testing mule
Sindhu VL
 
PPTX
Introduction to mule esb
Khasim Cise
 
PPT
Mule esb introduction
Praneethchampion
 
PPTX
Rabbit Mq in Mule
Mohammed246
 
How muleworks
Khadhar Koneti
 
Mule soa
D.Rajesh Kumar
 
Soap in mule
D.Rajesh Kumar
 
Vm component in mule demo
Sudha Ch
 
Mule enterprise service introduction
Son Nguyen
 
Mule soa
Son Nguyen
 
Mule esb mule message
sathyaraj Anand
 
Send email attachment using smtp in mule esb
Praneethchampion
 
Soap request in mule
Praneethchampion
 
Core concepts in mule
Sindhu VL
 
Design flows in mule
Sindhu VL
 
Webservice vm in mule
Praneethchampion
 
Mule velocity
Praneethchampion
 
Connectors in mule
Sindhu VL
 
Testing mule
Sindhu VL
 
Introduction to mule esb
Khasim Cise
 
Mule esb introduction
Praneethchampion
 
Rabbit Mq in Mule
Mohammed246
 

Similar to Send email attachment using smtp in mule esb (20)

PPTX
Send email attachment using smtp in mule esb
Sreekanth Kondapalli
 
PPTX
Send email attachment using smtp in mule esb
irfan1008
 
PPTX
Send email attachment using smtp in mule esb
Phaniu
 
PPTX
Send email attachment using smtp in mule esb
princeirfancivil
 
PPTX
Email using mule
Manav Prasad
 
PPTX
Send email attachment using smtp in mule esb
Anand kalla
 
PPTX
Email configuration in mule esb
Vamsi Krishna
 
PPTX
SMTP MULE
Rajkumar Epari
 
PPTX
How to use smtp endpoint
sivachandra mandalapu
 
ODP
Mule ESB SMTP Connector Integration
AnilKumar Etagowni
 
ODP
Mule smtp connector
Krishnakanth Goud
 
PPTX
How to use attachment transformer
sivachandra mandalapu
 
PDF
MuleSoft Surat Live Demonstration Virtual Meetup#3 - Building JWT OAuth 2.0 C...
Jitendra Bafna
 
PPTX
Sending mail with attachment
Anirban Sen Chowdhary
 
PPTX
Sending mail in mule
Son Nguyen
 
PPTX
Imap connector
prudhvivreddy
 
PPTX
Imap connector
kiranvanga
 
PPTX
Integration with Dropbox using Mule ESB
Rupesh Sinha
 
PDF
Mule ESB Interview or Certification questions
TechieVarsity
 
PPTX
File component in mule demo
Sudha Ch
 
Send email attachment using smtp in mule esb
Sreekanth Kondapalli
 
Send email attachment using smtp in mule esb
irfan1008
 
Send email attachment using smtp in mule esb
Phaniu
 
Send email attachment using smtp in mule esb
princeirfancivil
 
Email using mule
Manav Prasad
 
Send email attachment using smtp in mule esb
Anand kalla
 
Email configuration in mule esb
Vamsi Krishna
 
SMTP MULE
Rajkumar Epari
 
How to use smtp endpoint
sivachandra mandalapu
 
Mule ESB SMTP Connector Integration
AnilKumar Etagowni
 
Mule smtp connector
Krishnakanth Goud
 
How to use attachment transformer
sivachandra mandalapu
 
MuleSoft Surat Live Demonstration Virtual Meetup#3 - Building JWT OAuth 2.0 C...
Jitendra Bafna
 
Sending mail with attachment
Anirban Sen Chowdhary
 
Sending mail in mule
Son Nguyen
 
Imap connector
prudhvivreddy
 
Imap connector
kiranvanga
 
Integration with Dropbox using Mule ESB
Rupesh Sinha
 
Mule ESB Interview or Certification questions
TechieVarsity
 
File component in mule demo
Sudha Ch
 
Ad

More from RaviShankar Mishra (7)

PPTX
Mulesoft meetup 29.06
RaviShankar Mishra
 
PPTX
Hyderbad meetup 19th jan
RaviShankar Mishra
 
PPTX
Token Management using Stormpath inside Mule
RaviShankar Mishra
 
PPTX
Drools rule Concepts
RaviShankar Mishra
 
PPTX
Data weave in Mule
RaviShankar Mishra
 
PPTX
Creating restful api using mule esb
RaviShankar Mishra
 
PPTX
Connecting to salesforce and using database in mule
RaviShankar Mishra
 
Mulesoft meetup 29.06
RaviShankar Mishra
 
Hyderbad meetup 19th jan
RaviShankar Mishra
 
Token Management using Stormpath inside Mule
RaviShankar Mishra
 
Drools rule Concepts
RaviShankar Mishra
 
Data weave in Mule
RaviShankar Mishra
 
Creating restful api using mule esb
RaviShankar Mishra
 
Connecting to salesforce and using database in mule
RaviShankar Mishra
 
Ad

Recently uploaded (20)

PDF
3rd International Conference on Machine Learning and IoT (MLIoT 2025)
ClaraZara1
 
PPTX
Explore USA’s Best Structural And Non Structural Steel Detailing
Silicon Engineering Consultants LLC
 
PDF
Module - 5 Machine Learning-22ISE62.pdf
Dr. Shivashankar
 
PDF
AI TECHNIQUES FOR IDENTIFYING ALTERATIONS IN THE HUMAN GUT MICROBIOME IN MULT...
vidyalalltv1
 
PPTX
Final Major project a b c d e f g h i j k l m
bharathpsnab
 
PPT
Footbinding.pptmnmkjkjkknmnnjkkkkkkkkkkkkkk
mamadoundiaye42742
 
PPTX
darshai cross section and river section analysis
muk7971
 
PPTX
Numerical-Solutions-of-Ordinary-Differential-Equations.pptx
SAMUKTHAARM
 
PDF
Submit Your Papers-International Journal on Cybernetics & Informatics ( IJCI)
IJCI JOURNAL
 
PDF
Bayesian Learning - Naive Bayes Algorithm
Sharmila Chidaravalli
 
PDF
Tesia Dobrydnia - An Avid Hiker And Backpacker
Tesia Dobrydnia
 
PPTX
Alan Turing - life and importance for all of us now
Pedro Concejero
 
PDF
aAn_Introduction_to_Arcadia_20150115.pdf
henriqueltorres1
 
PDF
mbse_An_Introduction_to_Arcadia_20150115.pdf
henriqueltorres1
 
PDF
NTPC PATRATU Summer internship report.pdf
hemant03701
 
PPTX
Water Resources Engineering (CVE 728)--Slide 4.pptx
mohammedado3
 
PPTX
Knowledge Representation : Semantic Networks
Amity University, Patna
 
PDF
A Brief Introduction About Robert Paul Hardee
Robert Paul Hardee
 
PDF
Water Industry Process Automation & Control Monthly July 2025
Water Industry Process Automation & Control
 
PDF
William Stallings - Foundations of Modern Networking_ SDN, NFV, QoE, IoT, and...
lavanya896395
 
3rd International Conference on Machine Learning and IoT (MLIoT 2025)
ClaraZara1
 
Explore USA’s Best Structural And Non Structural Steel Detailing
Silicon Engineering Consultants LLC
 
Module - 5 Machine Learning-22ISE62.pdf
Dr. Shivashankar
 
AI TECHNIQUES FOR IDENTIFYING ALTERATIONS IN THE HUMAN GUT MICROBIOME IN MULT...
vidyalalltv1
 
Final Major project a b c d e f g h i j k l m
bharathpsnab
 
Footbinding.pptmnmkjkjkknmnnjkkkkkkkkkkkkkk
mamadoundiaye42742
 
darshai cross section and river section analysis
muk7971
 
Numerical-Solutions-of-Ordinary-Differential-Equations.pptx
SAMUKTHAARM
 
Submit Your Papers-International Journal on Cybernetics & Informatics ( IJCI)
IJCI JOURNAL
 
Bayesian Learning - Naive Bayes Algorithm
Sharmila Chidaravalli
 
Tesia Dobrydnia - An Avid Hiker And Backpacker
Tesia Dobrydnia
 
Alan Turing - life and importance for all of us now
Pedro Concejero
 
aAn_Introduction_to_Arcadia_20150115.pdf
henriqueltorres1
 
mbse_An_Introduction_to_Arcadia_20150115.pdf
henriqueltorres1
 
NTPC PATRATU Summer internship report.pdf
hemant03701
 
Water Resources Engineering (CVE 728)--Slide 4.pptx
mohammedado3
 
Knowledge Representation : Semantic Networks
Amity University, Patna
 
A Brief Introduction About Robert Paul Hardee
Robert Paul Hardee
 
Water Industry Process Automation & Control Monthly July 2025
Water Industry Process Automation & Control
 
William Stallings - Foundations of Modern Networking_ SDN, NFV, QoE, IoT, and...
lavanya896395
 

Send email attachment using smtp in mule esb

  • 1. Send email attachment using SMTP in Mule ESB Presented by : Ravi Mishra
  • 2. What is Mule ESB ?  Mule ESB is a lightweight Java-based enterprise service bus (ESB) and integration platform that allows developers to connect applications together quickly and easily, enabling them to exchange data. Mule ESB enables easy integration of existing systems, regardless of the different technologies that the applications use, including JMS, Web Services, JDBC, HTTP, and more.
  • 3.  This example shows how we can send email attachment using SMTP connector to self or another email. We simply put a file in a source directory and Mule will read the file from the source directory. Using Mule ESB it’s very easy to read the file from a location. If we had to read the file using manual coding then we had to write many lines of code. But using Mule ESB we just simply put a file in a directory and let the Mule know the file path and Mule does the rest of the thing. You can put any kind of file to the source for reading. The file that we put into a source directory will be an attachment to the intended recipient’s mail address. So finally when we will see the file as an attachment in the mailbox.
  • 4. What is Attachment transformer ?  Attachment transformer lets us attach a file or document which will be sent to the email address.
  • 5. What is SMTP connector ?  The SMTP endpoint allows Mule messages to be sent as email or email attachments with the Simple Mail Transfer Protocol (SMTP) using Java mail API.
  • 6. Prerequisites  Mule Studio 3.5.1 JDK 1.6 Maven 3 Mule Runtime 3.5.0 CE Knowledge of XML
  • 7.  Open Mule Studio and create a mule project. Go to File->New->Mule Project. Now enter the Project Name, selectRuntime – Mule Server, check the check box for Use Maven. Now enter the following information  Group Id: your Mail(ex. gmail.com) Artifact Id: project name – file- attachment(automatically populated when project name is getting typed) V  Click Next and verify project Location and JRE/JDK are set correctly. Click Finishersion: Mule studio generates default
  • 8.  Now drag and drop the elements from right side of the Mule studio as shown below in the picture.
  • 10. Browse and select the path from where a file will be read for an attachment. Logger component properties
  • 11.  File to String transformer properties  File-to-Strong transformer just transforms the file object to human readable string format. We will not set any property for this element Attachment transformer properties
  • 12.  Using attachment transformer we can set payload from previous flow as an attachment. We have to select Content Type, operation as Set Attachment, Name, Value
  • 13.  SMTP connector properties For SMTP connector we have to input email host, user name, password, port under Basic Settings and To Address, From Address, Subject under Email Information.
  • 14.  The whole XML file of entire flow  <?xml version="1.0" encoding="UTF-8"?>   <mule xmlns:smtp="http://www.mulesoft.org/schema/mule/smtp"  xmlns:file="http://www.mulesoft.org/schema/mule/file" xmlns="http://www.mulesoft.org/schema/mule/core"  xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"  xmlns:spring="http://www.springframework.org/schema/beans" version="CE-3.5.0"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-current.xsd  http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd  http://www.mulesoft.org/schema/mule/file http://www.mulesoft.org/schema/mule/file/current/mule-file.xsd  http://www.mulesoft.org/schema/mule/smtp http://www.mulesoft.org/schema/mule/smtp/current/mule-smtp.xsd">  <flow name="file-attachmentFlow1" doc:name="file-attachmentFlow1">  <file:inbound-endpoint path="D:AnypointWorkspacesource"  responseTimeout="10000" doc:name="File" />  <logger message="#[payload]" level="INFO" doc:name="Logger" />  <file:file-to-string-transformer  doc:name="File to String" />  <logger message="#[payload]" level="INFO" doc:name="Logger" />  <set-attachment attachmentName="attachment" value="#[payload]"  contentType="text/plain" doc:name="Attachment" />  <logger message="#[payload]" level="INFO" doc:name="Logger" />  <smtp:outbound-endpoint host="mail.domain.com"  user="[email protected]" password="password" to="[email protected]"  from="[email protected]" subject="Test Email" responseTimeout="10000"  doc:name="SMTP" />  <logger message="#[payload]" level="INFO" doc:name="Logger" />  </flow>  </mule>
  • 15.  Now create a text file called file- attachment.txt and put it under selected path, i.e., as per the above XML the file path is D:AnypointWorkspacesource.  Do right-click on file-attachment.xml and click on Run As -> Mule Application with Maven. Once the application up and running you will get the console output and email attachment in your mailbox where you have sent the email.
  • 16.  Output in console  INFO 2015-03-05 09:25:46,372 [[file- attachment].connector.file.mule.default.receiver.01] org.mule.transport.file.FileMessageReceiver: Lock obtained on file: D:AnypointWorkspacesourcefile-attachment.txt  INFO 2015-03-05 09:25:46,404 [[file-attachment].file- attachmentFlow1.stage1.02] org.mule.api.processor.LoggerMessageProcessor: org.mule.transport.file.ReceiverFileInputStream@6a150e  INFO 2015-03-05 09:25:46,406 [[file-attachment].file- attachmentFlow1.stage1.02] org.mule.api.processor.LoggerMessageProcessor: This is a file content  INFO 2015-03-05 09:25:46,407 [[file-attachment].file- attachmentFlow1.stage1.02] org.mule.api.processor.LoggerMessageProcessor: This is a file content  INFO 2015-03-05 09:25:46,419 [[file-attachment].file- attachmentFlow1.stage1.02] org.mule.api.processor.LoggerMessageProcessor: This is a file content  INFO 2015-03-05 09:25:46,422 [[file- attachment].connector.smtp.mule.default.dispatcher.01] org.mule.transport.service.DefaultTransportServiceDescriptor: Loading default outbound transformer: org.mule.transport.email.transformers.ObjectToMimeMessage  INFO 2015-03-05 09:25:46,428 [[file- attachment].connector.smtp.mule.default.dispatcher.01] org.mule.lifecycle.AbstractLifecycleManager: Initialising: 'connector.smtp.mule.default.dispatcher.1213248'. Object is: SmtpMessageDispatcher
  • 17.  Click on the attachment. You will see the below output in the browser.