Hi,

I got this sorted out for a @hotpop.com address (which has a free smtp
service), with the following configuration.

    <transportSender name="mailto"
class="org.apache.synapse.transport.mail.MailTransportSender">
        <parameter name="mail.smtp.host">smtp.hotpop.com</parameter>
        <parameter name="mail.smtp.port">25</parameter>
        <parameter name="mail.smtp.starttls.enable">false</parameter>
        <parameter name="mail.smtp.auth">false</parameter>
        <parameter name="mail.smtp.user">[email protected]</parameter>
        <parameter name="mail.smtp.password">password</parameter>
        <parameter name="mail.smtp.from">[email protected]</parameter>
    </transportSender>

It took sometime for me to learn (thanks to Ruwan for the hint) that
<parameter name="mail.smtp.auth">true</parameter> does not quite mean the
same as ticking that your "server requires authentication" as in an E-mail
client. I'm yet to try this out with a @gmail smtp address (which is a bit
complicated as they use SSL. The actual exception was generated when the
transport sender was used to send e-mail through a @gmail address.

However, once I get some free time, perhaps next week, I'm looking forward
to add a small explanation to the Samples Guide in Synapse on what these
parameters actually mean and with a few sample configurations so that others
wouldn't run into the same problems I had. As of now, I only had one single
sample configuration which does not quite work.

Regards,
Senaka

2009/1/26 Sanjiva Weerawarana <[email protected]>

>  Senaka, the exception may give a clue:
>
> " Caused by: javax.mail.MessagingException: Can't send command to SMTP
> host;
>   nested exception is:
>     javax.net.ssl.SSLHandshakeException:
> sun.security.validator.ValidatorException: PKIX path building failed:
> sun.security.provider.certpath.SunCertPathBuilderException: unable to find
> valid certification path to requested target"
>
> Sanjiva.
>
> Senaka Fernando wrote:
>
> Hi all,
>
> I get this exception when trying to send messages using the mail transport.
> Wonder whether someone knows how to fix this. I have followed the
> instructions in [1] in setting up the sender (with my gmail account
> details). I have also setup gmail to use smtp/pop etc.
>
> Thanks,
> Senaka
>
> 2009-01-23 09:43:29,015 [127.0.1.1-home] [HttpServerWorker-16] ERROR
> Axis2Sender Unexpected error during sending message out
> org.apache.axis2.AxisFault: Error generating mail message
>     at
> org.apache.synapse.transport.base.AbstractTransportSender.handleException(AbstractTransportSender.java:238)
>     at
> org.apache.synapse.transport.mail.MailTransportSender.sendMessage(MailTransportSender.java:189)
>     at
> org.apache.synapse.transport.base.AbstractTransportSender.invoke(AbstractTransportSender.java:120)
>     at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
>     at
> org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.send(DynamicAxisOperation.java:190)
>     at
> org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.executeImpl(DynamicAxisOperation.java:174)
>     at
> org.apache.axis2.client.OperationClient.execute(OperationClient.java:163)
>     at
> org.apache.synapse.core.axis2.Axis2FlexibleMEPClient.send(Axis2FlexibleMEPClient.java:307)
>     at
> org.apache.synapse.core.axis2.Axis2Sender.sendOn(Axis2Sender.java:57)
>     at
> org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:232)
>     at
> org.apache.synapse.endpoints.AbstractEndpoint.send(AbstractEndpoint.java:205)
>     at
> org.apache.synapse.endpoints.AddressEndpoint.send(AddressEndpoint.java:59)
>     at
> org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:77)
>     at
> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:59)
>     at
> org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
>     at
> org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:177)
>     at
> org.apache.synapse.core.axis2.SynapseMessageReceiver.receive(SynapseMessageReceiver.java:89)
>     at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176)
>     at
> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
>     at
> org.apache.synapse.transport.nhttp.ServerWorker.processPost(ServerWorker.java:290)
>     at
> org.apache.synapse.transport.nhttp.ServerWorker.run(ServerWorker.java:199)
>     at
> org.apache.synapse.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:58)
>     at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
>     at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
>     at java.lang.Thread.run(Thread.java:595)
> Caused by: org.apache.axis2.AxisFault: Error creating mail message or
> sending it to the configured server
>     at
> org.apache.synapse.transport.base.AbstractTransportSender.handleException(AbstractTransportSender.java:238)
>     at
> org.apache.synapse.transport.mail.MailTransportSender.sendMail(MailTransportSender.java:366)
>     at
> org.apache.synapse.transport.mail.MailTransportSender.sendMessage(MailTransportSender.java:185)
>     ... 23 more
> Caused by: javax.mail.MessagingException: Can't send command to SMTP host;
>   nested exception is:
>     javax.net.ssl.SSLHandshakeException:
> sun.security.validator.ValidatorException: PKIX path building failed:
> sun.security.provider.certpath.SunCertPathBuilderException: unable to find
> valid certification path to requested target
>     at com.sun.mail.smtp.SMTPTransport.sendCommand(SMTPTransport.java:1420)
>     at com.sun.mail.smtp.SMTPTransport.sendCommand(SMTPTransport.java:1408)
>     at com.sun.mail.smtp.SMTPTransport.ehlo(SMTPTransport.java:847)
>     at
> com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:384)
>     at javax.mail.Service.connect(Service.java:297)
>     at javax.mail.Service.connect(Service.java:156)
>     at javax.mail.Service.connect(Service.java:105)
>     at javax.mail.Transport.send0(Transport.java:168)
>     at javax.mail.Transport.send(Transport.java:98)
>     at
> org.apache.synapse.transport.mail.MailTransportSender.sendMail(MailTransportSender.java:346)
>     ... 24 more
> Caused by: javax.net.ssl.SSLHandshakeException:
> sun.security.validator.ValidatorException: PKIX path building failed:
> sun.security.provider.certpath.SunCertPathBuilderException: unable to find
> valid certification path to requested target
>     at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:150)
>     at
> com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1584)
>     at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:174)
>     at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:168)
>     at
> com.sun.net.ssl.internal.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:848)
>     at
> com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:106)
>     at
> com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Handshaker.java:495)
>     at
> com.sun.net.ssl.internal.ssl.Handshaker.process_record(Handshaker.java:433)
>     at
> com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:877)
>     at
> com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1089)
>     at
> com.sun.net.ssl.internal.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:618)
>     at
> com.sun.net.ssl.internal.ssl.AppOutputStream.write(AppOutputStream.java:59)
>     at
> com.sun.mail.util.TraceOutputStream.write(TraceOutputStream.java:101)
>     at
> java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65)
>     at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:123)
>     at com.sun.mail.smtp.SMTPTransport.sendCommand(SMTPTransport.java:1418)
>     ... 33 more
> Caused by: sun.security.validator.ValidatorException: PKIX path building
> failed: sun.security.provider.certpath.SunCertPathBuilderException: unable
> to find valid certification path to requested target
>     at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:221)
>     at
> sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:145)
>     at sun.security.validator.Validator.validate(Validator.java:203)
>     at
> com.sun.net.ssl.internal.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:172)
>     at
> com.sun.net.ssl.internal.ssl.JsseX509TrustManager.checkServerTrusted(SSLContextImpl.java:320)
>     at
> com.sun.net.ssl.internal.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:841)
>     ... 44 more
> Caused by: sun.security.provider.certpath.SunCertPathBuilderException:
> unable to find valid certification path to requested target
>     at
> sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:236)
>     at java.security.cert.CertPathBuilder.build(CertPathBuilder.java:194)
>     at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:216)
>     ... 49 more
>
> ------------------------------
>
> _______________________________________________
> Esb-java-dev mailing 
> [email protected]https://wso2.org/cgi-bin/mailman/listinfo/esb-java-dev
>
>
> --
> Sanjiva Weerawarana, Ph.D.
> Founder, Chairman & CEO; WSO2, Inc.;  http://wso2.com/
> email: [email protected]; cell: +1 650 265 8311 | +94 77 787 6880
> blog: http://sanjiva.weerawarana.org/
>
> The Open Source SOA Company
>
>
> _______________________________________________
> Esb-java-dev mailing list
> [email protected]
> https://wso2.org/cgi-bin/mailman/listinfo/esb-java-dev
>
>
_______________________________________________
Esb-java-dev mailing list
[email protected]
https://wso2.org/cgi-bin/mailman/listinfo/esb-java-dev

Reply via email to