Я столкнулся с той же проблемой при подключении к SMTP-серверу GMail, и теперь
Я решил это. Следующий фрагмент кода, который я использовал для отправки электронной почты
с настройкой файла 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 я начал получать электронные письма.
Дайте мне знать, если у кого-то есть лучший способ сделать это.