Java 邮件延迟

标签 java jakarta-ee

我在我的struts项目中使用了java mail(com.sun.mail.smtp)。邮件发送成功,但收件人延迟结束邮件。需要 2 或 3 小时。

当我使用具有相同 smtp 设置的 PHP 邮件程序时,没有延迟,邮件工作正常。

有人遇到这个问题,知道原因是什么吗?

最佳答案

Javamail 不存储和转发邮件。因此,如果您已通过调用 Transport.sendMessage() 成功将电子邮件发送到邮件服务器并且没有收到错误。它位于邮件服务器上等待投递。您需要检查您设置的 smtp 服务器、用户名和密码。这些是您发送到 Transport.connect(服务器、用户名、密码)的内容。确保它们与您在 PHP 中使用的相同。如果您没有在 PHP 中设置它们,那么我敢打赌您没有使用相同的设置,因此一台服务器比另一台服务器花费的时间更长。

在 Transport.connect()、Transport.sendMessage()、Transport.close() 调用周围放置一些计时语句。看看完成该部分需要多长时间。如果花费的时间非常短,那么您就知道邮件服务器端存在错误。我敢打赌,您并不是在与您认为正在与之通信的服务器进行通信。

关于Java 邮件延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9806355/

相关文章:

javafx对话框错误

java - 二叉搜索树中的递归方法-java

java - Java 客户端到服务器使用原始数据进行通信的可能技术?

tomcat - 将 WAR 部署到 TomEE 服务器

java - Jax-RS( Jersey )上下文中 WebApplicationException 和 WebServiceException 的区别

java - 当 Java 中出现堆溢出时,我如何知道什么正在使用内存?

java - 默认情况下,自签名证书和 CN 中带有通配符的证书是否在 Java 中被阻止?

java - 在 main 中定义客户端和服务器

java - 如何自动选择 JTable 中的所有行并卡住选择?

spring - 如何让 Spring MVC View (JSP) 的一个简单案例能够正常工作?