Copy link to clipboard
Copied
Trying to send mail with CF10 and I am getting connect errors from Java. I have tried to get the mail function to work with 2 internal SMTP (MSFT and Smartermail) and one external. I can successfully verify connections to any of these servers, but when I try to send mail to them, I get this in the error log:
"Error","scheduler-1","07/19/13","07:40:32",,"javax.mail.MessagingException: IOException while sending message; nested exception is: | java.net.ConnectException: Connection timed out: connect" |
the full exception is:
"Error","scheduler-1","07/19/13","07:41:35",,"javax.mail.MessagingException: IOException while sending message; nested exception is: | java.net.ConnectException: Connection timed out: connect" |
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:1141) | |
at coldfusion.mail.MailSpooler.deliver(MailSpooler.java:1300) | |
at coldfusion.mail.MailSpooler.sendMail(MailSpooler.java:1197) | |
at coldfusion.mail.MailSpooler.deliverStandard(MailSpooler.java:1613) | |
at coldfusion.mail.MailSpooler.run(MailSpooler.java:1578) | |
at coldfusion.scheduling.ThreadPool.run(ThreadPool.java:211) | |
at coldfusion.scheduling.WorkerThread.run(WorkerThread.java:71) |
Caused by: java.net.ConnectException: Connection timed out: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method) | |
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:69) | |
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339) | |
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200) | |
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182) | |
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:157) | |
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:391) | |
at java.net.Socket.connect(Socket.java:579) | |
at sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:618) | |
at sun.security.ssl.BaseSSLSocketImpl.connect(BaseSSLSocketImpl.java:160) | |
at sun.net.NetworkClient.doConnect(NetworkClient.java:180) | |
at sun.net.www.http.HttpClient.openServer(HttpClient.java:378) | |
at sun.net.www.http.HttpClient.openServer(HttpClient.java:473) | |
at sun.net.www.protocol.https.HttpsClient.<init>(HttpsClient.java:270) | |
at sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:327) | |
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(AbstractDelegateHttpsURLConne...) | |
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:931) | |
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.jav...) | |
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1299) | |
at com.sun.net.ssl.internal.www.protocol.https.HttpsURLConnectionOldImpl.getInputStream(HttpsURLConnectionOldImpl.java:224) | |
at java.net.URL.openStream(URL.java:1037) | |
at javax.activation.URLDataSource.getInputStream(URLDataSource.java:107) | |
at javax.activation.DataHandler.writeTo(DataHandler.java:305) | |
at javax.mail.internet.MimeBodyPart.writeTo(MimeBodyPart.java:1476) | |
at javax.mail.internet.MimeBodyPart.writeTo(MimeBodyPart.java:865) | |
at javax.mail.internet.MimeMultipart.writeTo(MimeMultipart.java:462) | |
at com.sun.mail.handlers.multipart_mixed.writeTo(multipart_mixed.java:103) | |
at javax.activation.ObjectDataContentHandler.writeTo(DataHandler.java:884) | |
at javax.activation.DataHandler.writeTo(DataHandler.java:317) | |
at javax.mail.internet.MimeBodyPart.writeTo(MimeBodyPart.java:1476) | |
at javax.mail.internet.MimeMessage.writeTo(MimeMessage.java:1772) | |
at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:1099) | |
... 6 more |
Again, I can verify the server with the admin tool, and I can manually connect to the SMTP server with telnet and send messages. My port setting is correct and username and password are correct. I even setup MSFT SMTP server with no username and I was able to send mail through telnet to it, but not CF.
Any help would be greatly appreciated.
- Robert
Copy link to clipboard
Copied
bump.... anybody have any ideas?
Thanks!
Copy link to clipboard
Copied
Can you post the code of your test <cfmail> call...
--
Adam
Copy link to clipboard
Copied
sure... simple cfmail call that worked on the old server:
<cfmail to="#getuser.email#" from="Inabox SiteAdmin <notify@inaboxtech.com>" subject="Inabox SiteAdmin Password Reset Instructions" type="html" priority="3">#t1# | |||||||||||
</cfmail> |
the setting for the mail server in the admin are correct and the mail server gets verified. I can see the initial connection to the mail server in the smtp logs, but the mail does not get sent. Looking at the raw cfmail file show no errors or red flags.
Thanks.
Copy link to clipboard
Copied
I am also now seeing this in the email server logs:
10:56:03 [10.0.0.1][9175607] cmd: EHLO BigBox1
10:56:03 [10.0.0.1][9175607] rsp: 250-mail.inaboxdev.com Hello [10.0.0.1]250-SIZE 5242880250-AUTH LOGIN CRAM-MD5250 OK
10:56:45 [10.0.0.1][9175607] cmd: MAIL FROM:<robert@inaboxtech.com>
10:56:45 [10.0.0.1][9175607] rsp: 250 OK <robert@inaboxtech.com> Sender ok
10:56:45 [10.0.0.1][9175607] cmd: RCPT TO:<robert@inaboxtech.com>
10:56:45 [10.0.0.1][9175607] rsp: 250 OK <robert@inaboxtech.com> Recipient ok
10:56:45 [10.0.0.1][9175607] cmd: DATA
10:56:45 [10.0.0.1][9175607] rsp: 354 Start mail input; end with <CRLF>.<CRLF>
10:57:06 [10.0.0.1][9175607] data transfer failed.
10:57:06 [10.0.0.1][9175607] disconnected at 7/22/2013 10:57:06 AM
Copy link to clipboard
Copied
Can you check a cfemail sample(might be above sample) but with hardcoded email to address? It looks, it processing application but failing before data transfer, might be not getting to attribute "getuser.email" value.
Check it also with any external domain to attribute value at least gmail or yahoo?
Regards,
Kaif Akbar
Copy link to clipboard
Copied
The actual .cfmail file on the server is correct. I even took the .cfmail to another server and it processed fine.
Copy link to clipboard
Copied
It may be the scenario that its working on one of the server but it may not be working on the errorneous server as it may not be getting value of "getuser.email" on this environment.
What is the behavior of this page when you hardcode the value of "getuser.email" on this cfm page?
Regards,
Kaif Akbar
Copy link to clipboard
Copied
Just to close this out. It was not CF at all. Some base tcp ACKS from java to the mail server were blocked by the firewall. it seems the java engine wants to use ports above 52000 to ACK back and forth to the mail server.
Thanks for all the suggestions and offers for help.