我在连接到 GMail SMTP 服务器时遇到了同样的问题,现在
我已经解决了。我用来发送电子邮件的以下代码
使用 Log4j.properties 文件设置。
我用的是Log4j.1.2.16版本和JDK1.6
请在下面找到解决问题的步骤:
第一步初始化System.getProperties(key,value)。要连接到 GMail,您必须进行以下代码更改
static
{
System.setProperty("mail.smtp.auth", "true");
System.setProperty("mail.smtp.socketFactory.port", "465");
System.setProperty("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
System.setProperty("mail.smtp.socketFactory.fallback", "false");
System.setProperty("mail.smtp.user","xxx@gmail.com");
System.setProperty("mail.smtp.starttls.enable","true");
System.setProperty("mail.transport.protocol", "smtp");
System.setProperty("mail.smtp.starttls.enable", "true");
System.setProperty("mail.smtp.host", "smtp.gmail.com");
System.setProperty("mail.smtp.port", "465");
System.setProperty("mail.smtp.quitwait", "false");
}
二看log4j.properties文件设置:
log4j.rootLogger=DEBUG, FILE, email
log4j.appender.FILE=org.apache.log4j.RollingFileAppender
log4j.appender.FILE.maxFileSize=8192KB
log4j.appender.FILE.maxBackupIndex=5
log4j.appender.FILE.File=xxx.log
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.conversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} [%p] %t %c:%L - %m%n
log4j.appender.email=org.apache.log4j.net.SMTPAppender
log4j.appender.email.SMTPHost=smtp.gmail.com
log4j.appender.email.SMTPPort=465
log4j.appender.email.SMTPUsername=xyz@gmail.com
log4j.appender.email.SMTPPassword=xyz1234
log4j.appender.email.From=abcd@gmail.com
log4j.appender.email.to=blaha@gmail.com
log4j.appender.email.Subject=Error Alert
log4j.appender.email.layout=org.apache.log4j.PatternLayout
log4j.appender.email.layout.ConversionPattern=%d [%t] %-5p %c %x - %m%n
log4j.appender.email.BufferSize=10
log4j.appender.email.Threshold=ERROR
在代码级别以及 log4j.properties 设置进行所有更改后,我开始收到电子邮件。
如果有人有更好的方法,请告诉我。