SMTP Server Verifies; Emails Time Out

441 views
Skip to first unread message

Franc Amour

unread,
Jul 6, 2016, 6:00:06 PM7/6/16
to Lucee
How to troubleshoot this?

Firewall config has been verified correct.

Can telnet to mail server by hostname, on port 587 and issue mail commands.

Mail server verifies in Lucee web admin.

But...  Nothing but timeouts when the app sends a message:

smtp.example.com timeout occurred after 30 seconds while sending mail message javax.mail.MessagingException: timeout occurred after 30 seconds while sending mail message at lucee.runtime.net.smtp.SMTPClient._send(SMTPClient.java:808) at lucee.runtime.spooler.mail.MailSpoolerTask.execute(MailSpoolerTask.java:113) at lucee.runtime.spooler.SpoolerTaskSupport._execute(SpoolerTaskSupport.java:103) at lucee.runtime.spooler.SpoolerEngineImpl.execute(SpoolerEngineImpl.java:587) at lucee.runtime.spooler.SpoolerEngineImpl$TaskThread.run(SpoolerEngineImpl.java:522) :0

~frustrated

Jordan Michaels

unread,
Jul 6, 2016, 7:36:24 PM7/6/16
to lu...@googlegroups.com
Have you reviewed your email server logs to see what's happening on that side of things?

--
Kind regards,
Jordan Michaels
Vivio Technologies

----- Original Message -----
From: "Franc Amour" <advan...@gmail.com>
To: "Lucee" <lu...@googlegroups.com>
Sent: Wednesday, July 6, 2016 3:00:06 PM
Subject: [Lucee] SMTP Server Verifies; Emails Time Out

How to troubleshoot this?

Firewall config has been verified correct.

Can telnet to mail server by hostname, on port 587 and issue mail commands.

Mail server verifies in Lucee web admin.

But... Nothing but timeouts when the app sends a message:



*smtp.example.com timeout occurred after 30 seconds while sending mail
message javax.mail.MessagingException: timeout occurred after 30 seconds
while sending mail message at
lucee.runtime.net.smtp.SMTPClient._send(SMTPClient.java:808) at
lucee.runtime.spooler.mail.MailSpoolerTask.execute(MailSpoolerTask.java:113)
at
lucee.runtime.spooler.SpoolerTaskSupport._execute(SpoolerTaskSupport.java:103)
at
lucee.runtime.spooler.SpoolerEngineImpl.execute(SpoolerEngineImpl.java:587)
at
lucee.runtime.spooler.SpoolerEngineImpl$TaskThread.run(SpoolerEngineImpl.java:522)
:0*~frustrated

--
Win a ticket to dev.objective from Lucee via Twitter, see http://bit.ly/1UbTMWj for details, good luck and see you there...
---
You received this message because you are subscribed to the Google Groups "Lucee" group.
To unsubscribe from this group and stop receiving emails from it, send an email to lucee+un...@googlegroups.com.
To post to this group, send email to lu...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/lucee/523a4c9a-3d69-4421-81f7-b50c2755c395%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Franc Amour

unread,
Jul 7, 2016, 8:50:56 AM7/7/16
to Lucee
Yes - there's ZERO transactions in the log regarding this attempted connection.  Lucee has the right mail server name, the server IPs are all whitelisted in the firewall and in the mail server, and I can telnet to the mail server and manually create a message on the specified server and port.  The mail server isn't seeing any attempt, and the Lucee logs just say "timed out after 30 seconds."

Franc Amour

unread,
Jul 7, 2016, 12:06:52 PM7/7/16
to Lucee
SOLVED:

The CFMAIL tag had server specified, but not port.  This was overriding the server spec in Lucee web admin, and causing it to try and send on the standard port 25.

A nice setting in the admin would be to have an option to force all cfmail tags to use the admin-specified server regardless of code, but I'm sure there's arguments both for and against this.

Mark Drew

unread,
Jul 7, 2016, 12:11:46 PM7/7/16
to lu...@googlegroups.com

I think the logic is of cascading, so it goes

Tag defaults
    ApplicationDefaults*
        Web Context Settings
            Server Context Settings

The override becomes more local as you go.

  • a feature in Application.cfc is that you can set a default for all tags:

    component {
        tag.cfmail.server = "default setting";
        tag.cfmail.port = "default port";
        tag.cflocation.addtoken = false;
    }
    

Regards

Mark Drew

I think the logic is of cascading, so it goes

Tag defaults
ApplicationDefaults*
Web Context Settings
Server Context Settings

The override becomes more local as you go. 

* a feature in Application.cfc is that you can do:

component {
--
Win a ticket to dev.objective from Lucee via Twitter, see http://bit.ly/1UbTMWj for details, good luck and see you there...
---
You received this message because you are subscribed to the Google Groups "Lucee" group.
To unsubscribe from this group and stop receiving emails from it, send an email to lucee+un...@googlegroups.com.
To post to this group, send email to lu...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages