i get the follwoing exception when trying to send mail through SMTP. If i
run the java application it works fine and the mail is sent but throgh
mule it does not work for me.
the code snippet
<model>
<service name="emailHandler_1.0">
<inbound>
<jdbc:inbound-endpoint name="emailJdbc"
connector-ref="jdbcConnectorEmail" queryKey="selectEmailMessage">
<jdbc:transaction action="ALWAYS_BEGIN" />
<transformers>
<custom-transformer
class="transformer.DataToSendMailRequestDTO">
</custom-transformer>
</transformers>
</jdbc:inbound-endpoint>
</inbound>
<outbound>
<pass-through-router>
<smtp:outbound-endpoint host="<some ip>" port="25"
connector-ref="emailConnector" synchronous="true">
<jdbc:transaction action="ALWAYS_JOIN" />
<transformers>
<custom-transformer
class="transformer.SendMailRequestDTOToEmailMessage">
</custom-transformer>
<email:object-to-mime-transformer />
</transformers>
</smtp:outbound-endpoint>
</pass-through-router>
</outbound>
</service>
</model>
Please help me out with this.
--
View this message in context: http://www.nabble.com/Sending-mail-through-SMTP-in-mule-tp26024427p26024427.html
Sent from the Mule - User mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe from this list, please visit:
http://xircles.codehaus.org/manage_email
While you're at it, I'm curious to see why you configured a JDBC
transaction on an SMTP endpoint. Could you explain that pls?
HTH
A
Antoine Borg, Director of Services | Tel: +32 28 504 696
ricston Ltd., BP 2, 1180 Uccle, Brussels, BELGIUM
See our full schedule of Mule and Android courses:
http://www.ricston.com/courses/schedules/
email: _antoin...@ricston.com <mailto:antoin...@ricston.com> |
blog: blog.ricston.com <http://blog.ricston.com> | web: ricston.com
<http://www.ricston.com/>
Andrew Perepelytsya wrote:
>
> Please post the root cause of exception, don't cut it off.
>
> Andrew
>
>
the exception is :
2009-10-26 14:25:28,629 [emailHandler_1.0.2] INFO
[mule.transformer.SendMailRequestDTOToEmailMessage] -
SendMailRequestDTOToEmailMessage: has come from
endpoint=smtp://172.22.218.149:25
2009-10-26 14:25:28,676 [emailHandler_1.0.2] INFO
[mule.transformer.SendMailRequestDTOToEmailMessage] - muleMessage returned
from RequestToEmailTransformer
org.mule.transport.DefaultMessageAdapter/org.mule.transport.DefaultMessageAdapter@1bf7b23{id=4e9033a9-c20d-11de-9246-ad1213bcd7b1,
payload=java.lang.String,
properties=Properties{invocation:{toAddresses=ryan_ro...@mindtree.com,
fromAddress=ryan_ro...@mindtree.com, subject=hi}, inbound:{},
outbound:{MULE_SESSION=SUQ9NGU5NzVmOWEtYzIwZC0xMWRlLTkyNDYtYWQxMjEzYmNkN2Ix,
MULE_CORRELATION_ID=4e9033a9-c20d-11de-9246-ad1213bcd7b1,
sentDate=java.util.GregorianCalendar[time=1256547328676,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="Asia/Calcutta",offset=19800000,dstSavings=0,useDaylight=false,transitions=6,lastRule=null],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2009,MONTH=9,WEEK_OF_YEAR=44,WEEK_OF_MONTH=5,DAY_OF_MONTH=26,DAY_OF_YEAR=299,DAY_OF_WEEK=2,DAY_OF_WEEK_IN_MONTH=4,AM_PM=1,HOUR=2,HOUR_OF_DAY=14,MINUTE=25,SECOND=28,MILLISECOND=676,ZONE_OFFSET=19800000,DST_OFFSET=0],
MULE_ENDPOINT=smtp://172.22.218.149:25, MULE_ENCODING=UTF-8,
fromAddress=ryan_ro...@mindtree.com,
toAddresses=ryan_ro...@mindtree.com, subject=Test mail,
MULE_ORIGINATING_ENDPOINT=selectEmailMessage}, session:{}, },
correlationId=4e9033a9-c20d-11de-9246-ad1213bcd7b1, correlationGroup=-1,
correlationSeq=-1, encoding=UTF-8, exceptionPayload=null}
2009-10-26 14:26:33,579 [emailHandler_1.0.2] ERROR
[org.mule.DefaultExceptionStrategy] - Caught exception in Exception
Strategy: IOException while sending message
javax.mail.MessagingException: IOException while sending message;
nested exception is:
java.net.ConnectException: Connection timed out: connect
at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:625)
at
org.mule.transport.email.SmtpMessageDispatcher.sendMailMessage(SmtpMessageDispatcher.java:124)
at
org.mule.transport.email.SmtpMessageDispatcher.doDispatch(SmtpMessageDispatcher.java:95)
at
org.mule.transport.email.SmtpMessageDispatcher.doSend(SmtpMessageDispatcher.java:101)
at
org.mule.transport.AbstractMessageDispatcher.send(AbstractMessageDispatcher.java:163)
at org.mule.transport.AbstractConnector.send(AbstractConnector.java:2016)
at
org.mule.endpoint.DefaultOutboundEndpoint.send(DefaultOutboundEndpoint.java:76)
at org.mule.DefaultMuleSession.sendEvent(DefaultMuleSession.java:327)
at org.mule.DefaultMuleSession.sendEvent(DefaultMuleSession.java:213)
at
org.mule.routing.outbound.AbstractOutboundRouter$2.doInTransaction(AbstractOutboundRouter.java:152)
at
org.mule.transaction.TransactionTemplate.execute(TransactionTemplate.java:99)
at
org.mule.routing.outbound.AbstractOutboundRouter.send(AbstractOutboundRouter.java:159)
at
org.mule.routing.outbound.FilteringOutboundRouter.route(FilteringOutboundRouter.java:79)
at
org.mule.routing.outbound.OutboundPassThroughRouter.route(OutboundPassThroughRouter.java:69)
at
org.mule.routing.outbound.DefaultOutboundRouterCollection$1.doInTransaction(DefaultOutboundRouterCollection.java:88)
at
org.mule.transaction.TransactionTemplate.execute(TransactionTemplate.java:45)
at
org.mule.routing.outbound.DefaultOutboundRouterCollection.route(DefaultOutboundRouterCollection.java:93)
at
org.mule.service.AbstractService.dispatchToOutboundRouter(AbstractService.java:867)
at
org.mule.model.seda.SedaService.dispatchToOutboundRouter(SedaService.java:552)
at
org.mule.model.seda.SedaService$ComponentStageWorker.run(SedaService.java:575)
at org.mule.work.WorkerContext.run(WorkerContext.java:310)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.net.ConnectException: Connection timed out: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.Socket.connect(Socket.java:520)
at java.net.Socket.connect(Socket.java:470)
at sun.net.NetworkClient.doConnect(NetworkClient.java:157)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:388)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:523)
at sun.net.www.http.HttpClient.<init>(HttpClient.java:231)
at sun.net.www.http.HttpClient.New(HttpClient.java:304)
at sun.net.www.http.HttpClient.New(HttpClient.java:321)
at
sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:813)
at
sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:765)
at
sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:690)
at
sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:934)
at java.net.URL.openStream(URL.java:1007)
at javax.activation.URLDataSource.getInputStream(URLDataSource.java:107)
at javax.activation.DataHandler.writeTo(DataHandler.java:304)
at javax.mail.internet.MimeBodyPart.writeTo(MimeBodyPart.java:1350)
at javax.mail.internet.MimeBodyPart.writeTo(MimeBodyPart.java:845)
at javax.mail.internet.MimeMultipart.writeTo(MimeMultipart.java:361)
at com.sun.mail.handlers.multipart_mixed.writeTo(multipart_mixed.java:85)
at javax.activation.ObjectDataContentHandler.writeTo(DataHandler.java:883)
at javax.activation.DataHandler.writeTo(DataHandler.java:316)
at javax.mail.internet.MimeBodyPart.writeTo(MimeBodyPart.java:1350)
at javax.mail.internet.MimeMessage.writeTo(MimeMessage.java:1683)
at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:585)
... 23 more
2009-10-26 14:26:33,688 [emailHandler_1.0.2] ERROR
[mule.service.DefaultServiceExceptionStrategy] -
********************************************************************************
Message : Failed to route event via endpoint:
DefaultOutboundEndpoint{endpointUri=smtp://172.22.218.149:25,
connector=SmtpConnector{this=17e845a, started=true, initialised=true,
name='emailConnector', disposed=false,
numberOfConcurrentTransactedReceivers=4,
createMultipleTransactedReceivers=true, connected=true,
supportedProtocols=[smtp], serviceOverrides=null},
transformer=[SendMailRequestDTOToEmailMessage{this=12368df,
name='SendMailRequestDTOToObject', ignoreBadInput=false, returnClass=class
java.lang.Object, sourceTypes=[]}, ObjectToMimeMessage{this=1ba0f36,
name='ObjectToMessage', ignoreBadInput=false, returnClass=class
javax.mail.Message, sourceTypes=[class java.lang.String]}],
name='endpoint.smtp.22.218.149.25',
properties={fromAddress=ryan_ro...@mindtree.com,
toAddresses=ryan_ro...@mindtree.com, subject=hi},
transactionConfig=Transaction{factory=null, action=NEVER, timeout=0},
filter=null, deleteUnacceptedMessages=false, securityFilter=null,
synchronous=true, initialState=started, responseTimeout=10000,
endpointEncoding=UTF-8}. Message payload is of type: MimeMessage
Type : org.mule.api.transport.DispatchException
Code : MULE_ERROR-42999
JavaDoc :
http://www.mulesource.org/docs/site/current2/apidocs/org/mule/api/transport/DispatchException.html
Payload : javax.mail.internet.MimeMessage@1f7708
********************************************************************************
Exception stack is:
1. Connection timed out: connect (java.net.ConnectException)
java.net.PlainSocketImpl:-2
(http://java.sun.com/j2se/1.5.0/docs/api/java/net/ConnectException.html)
2. IOException while sending message (javax.mail.MessagingException)
com.sun.mail.smtp.SMTPTransport:625
(http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/mail/MessagingException.html)
3. Failed to route event via endpoint:
DefaultOutboundEndpoint{endpointUri=smtp://172.22.218.149:25,
connector=SmtpConnector{this=17e845a, started=true, initialised=true,
name='emailConnector', disposed=false,
numberOfConcurrentTransactedReceivers=4,
createMultipleTransactedReceivers=true, connected=true,
supportedProtocols=[smtp], serviceOverrides=null},
transformer=[SendMailRequestDTOToEmailMessage{this=12368df,
name='SendMailRequestDTOToObject', ignoreBadInput=false, returnClass=class
java.lang.Object, sourceTypes=[]}, ObjectToMimeMessage{this=1ba0f36,
name='ObjectToMessage', ignoreBadInput=false, returnClass=class
javax.mail.Message, sourceTypes=[class java.lang.String]}],
name='endpoint.smtp.22.218.149.25',
properties={fromAddress=ryan_ro...@mindtree.com,
toAddresses=ryan_ro...@mindtree.com, subject=hi},
transactionConfig=Transaction{factory=null, action=NEVER, timeout=0},
filter=null, deleteUnacceptedMessages=false, securityFilter=null,
synchronous=true, initialState=started, responseTimeout=10000,
endpointEncoding=UTF-8}. Message payload is of type: MimeMessage
(org.mule.api.transport.DispatchException)
org.mule.transport.AbstractMessageDispatcher:185
(http://www.mulesource.org/docs/site/current2/apidocs/org/mule/api/transport/DispatchException.html)
********************************************************************************
--
View this message in context: http://www.nabble.com/Sending-mail-through-SMTP-in-mule-tp26024427p26056244.html
1. Connection timed out: connect (java.net.ConnectException)
java.net.PlainSocketImpl:-2
--
View this message in context: http://www.nabble.com/Sending-mail-through-SMTP-in-mule-tp26024427p26060061.html
Code :
<spring:bean id="foreverRetryPolicyTemplateForSMTP"
class=" aero.sita.bagmanager.common.retryPolicies.RetryForeverTemplate">
<spring:property name="monitoringCount" value="7"></spring:property>
<spring:property name="jmsEndpoint" value="SMTP"></spring:property>
</spring:bean>
<spring:bean id="ThreadingPolicyTemplateForSMTP"
class=" aero.sita.bagmanager.common.retryPolicies.CustomisedAdaptiveRetryPolicyTemplateWrapper">
<spring:property name="delegate" ref="foreverRetryPolicyTemplateForSMTP" />
</spring:bean>
<spring:bean id="foreverRetryPolicyTemplateForJDBC"
class=" aero.sita.bagmanager.common.retryPolicies.RetryForeverTemplate">
<spring:property name="monitoringCount" value="7"></spring:property>
<spring:property name="jmsEndpoint" value="JDBC"></spring:property>
</spring:bean>
<spring:bean id="ThreadingPolicyTemplateForJDBC"
class=" aero.sita.bagmanager.common.retryPolicies.CustomisedAdaptiveRetryPolicyTemplateWrapper">
<spring:property name="delegate" ref="foreverRetryPolicyTemplateForJDBC" />
</spring:bean>
<smtp:connector name="emailConnector" contentType="text/plain"
fromAddress="use...@company.demo1.mconnect.aero" subject="Sita Mail From Mule" >
<spring:property name="retryPolicyTemplate" ref="ThreadingPolicyTemplateForSMTP" >
</spring:property>
<custom-exception-strategy
class="aero.sita.bagmanager.common.service.handler.ExceptionConnectorHandler">
</custom-exception-strategy>
</smtp:connector>
<!-- BEG JDBC Configuration for FIDS -->
<jdbc:connector name="jdbcConnector" pollingFrequency="10000"
dataSource-ref="dataSource" validateConnections="true" >
<spring:property name="retryPolicyTemplate" ref="ThreadingPolicyTemplateForJDBC" />
<custom-exception-strategy
class="aero.sita.bagmanager.common.service.handler.ExceptionConnectorHandler">
</custom-exception-strategy>
<jdbc:query key="selectEmailMessage"
value="SELECT MESSAGE_ID, SENDER_ID, SENDER_NAME, SUBJECT, BODY, ATTACHMENT_URL, TO_LIST, CC_LIST, BCC_LIST, STATUS from
MAILS where STATUS='N'" />
<jdbc:query key="selectEmailMessage.ack"
value="update MAILS set
STATUS='Y' where MESSAGE_ID=#[map-payload:MESSAGE_ID]" />
</jdbc:connector>
<spring:bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<spring:property name="driverClassName"
value="oracle.jdbc.driver.OracleDriver" />
<spring:property name="url"
value="jdbc:oracle:thin:@57.5.198.175:1521:orcl" />
<spring:property name="username" value="bmoper" />
<spring:property name="password" value="bmoper" />
<spring:property name="maxActive" value="20" />
<spring:property name="maxIdle" value="5" />
</spring:bean>
<model>
<service name="emailHandler_1.0">
<inbound>
<jdbc:inbound-endpoint name="emailJdbc"
connector-ref="jdbcConnector" queryKey="selectEmailMessage">
<jdbc:transaction action="ALWAYS_BEGIN" />
<transformers>
<custom-transformer
class="aero.sita.bagmanager.common.mule.transformer.DataToSendMailRequestDTO">
</custom-transformer>
</transformers>
</jdbc:inbound-endpoint>
</inbound>
<outbound>
<pass-through-router>
<smtp:outbound-endpoint host="172.22.218.149"
connector-ref="emailConnector" user="user16%40company.demo1.mc"
password="s!+" >
<jdbc:transaction action="ALWAYS_JOIN" />
<transformers>
<custom-transformer
class="aero.sita.bagmanager.common.mule.transformer.SendMailRequestDTOToEmailMessage">
</custom-transformer>
<email:object-to-mime-transformer />
</transformers>
</smtp:outbound-endpoint>
</pass-through-router>
</outbound>
</service>
Some more details :
I am using the JDBC because i have to get the "To" Address from the Database and so it is a transaction.
am getting the same error as specified earlier.
please help me out with this.