My application.properties:
#E-mail properties Gmail
spring.mail.host=smtp.gmail.com
spring.mail.username=derp@gmail.com
spring.mail.password=DERP
spring.mail.port=465
spring.mail.properties.mail.smtp.auth=true
Мой метод EmailSender (добавил свойства в эту часть, чтобы посмотреть, будет ли он работать, но не работает):
public void sendEmail(String title, String message, String email) {
final Properties props = new Properties();
props.put("spring.mail.port","465");
SimpleMailMessage msg = new SimpleMailMessage();
msg.setTo(email);
msg.setSubject(title);
msg.setText(message);
try {
} catch (Exception e) {
log.warn("Erro ao enviar o email para:" + email);
}
javaMailSender.send(msg);
}
Я думал мое приложение по какой-то причине не обращалось к application.properties, но, поскольку я получаю значения из базы данных, я почти уверен, что это доступно. Все мои поиски заканчиваются тем, что люди используют неправильный порт или что-то в этом роде. Отправитель находится в другом проекте, у меня есть MailSenderCore и тот, который выполняет другую логику, поэтому я подумал, что это из-за этого, и попытался добавить application.properties в оба проекта, просто чтобы проверить его, но все еще та же ошибка.
это мой журнал:
nested exception is:
java.net.ConnectException: Connection timed out (Connection timed out). Failed messages: com.sun.mail.util.MailConnectException: Couldn't connect to host, port: smtp.gmail.com, 25; timeout -1;
nested exception is:
java.net.ConnectException: Connection timed out (Connection timed out)
at org.springframework.mail.javamail.JavaMailSenderImpl.doSend(JavaMailSenderImpl.java:448) ~[spring-context-support-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:323) ~[spring-context-support-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:312) ~[spring-context-support-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at com.sippulse.email.core.SipPulseEmailServiceImpl.sendEmail(SipPulseEmailServiceImpl.java:89) ~[SipPulseEmailCore-0.0.1-SNAPSHOT.jar:0.0.1-SNAPSHOT]
at com.sippulse.email.lowcredit.SipPulseEmailLowCredit.SipPulseEmailLowCreditApplication.applicationRunner(SipPulseEmailLowCreditApplication.java:50) [classes/:na]
at com.sippulse.email.lowcredit.SipPulseEmailLowCredit.SipPulseEmailLowCreditApplication$$EnhancerBySpringCGLIB$$6db9b225.CGLIB$applicationRunner$0(<generated>) ~[classes/:na]
at com.sippulse.email.lowcredit.SipPulseEmailLowCredit.SipPulseEmailLowCreditApplication$$EnhancerBySpringCGLIB$$6db9b225$$FastClassBySpringCGLIB$$f2946bba.invoke(<generated>) ~[classes/:na]
at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:244) ~[spring-core-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:363) ~[spring-context-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at com.sippulse.email.lowcredit.SipPulseEmailLowCredit.SipPulseEmailLowCreditApplication$$EnhancerBySpringCGLIB$$6db9b225.applicationRunner(<generated>) ~[classes/:na]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_242]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_242]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_242]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_242]
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]
... 20 common frames omitted
Caused by: com.sun.mail.util.MailConnectException: Couldn't connect to host, port: smtp.gmail.com, 25; timeout -1
at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:2209) ~[jakarta.mail-1.6.4.jar:1.6.4]
at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:722) ~[jakarta.mail-1.6.4.jar:1.6.4]
at javax.mail.Service.connect(Service.java:342) ~[jakarta.mail-1.6.4.jar:1.6.4]
at org.springframework.mail.javamail.JavaMailSenderImpl.connectTransport(JavaMailSenderImpl.java:518) ~[spring-context-support-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at org.springframework.mail.javamail.JavaMailSenderImpl.doSend(JavaMailSenderImpl.java:437) ~[spring-context-support-5.2.3.RELEASE.jar:5.2.3.RELEASE]
... 34 common frames omitted
Caused by: java.net.ConnectException: Connection timed out (Connection timed out)
at java.net.PlainSocketImpl.socketConnect(Native Method) ~[na:1.8.0_242]
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) ~[na:1.8.0_242]
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) ~[na:1.8.0_242]
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) ~[na:1.8.0_242]
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) ~[na:1.8.0_242]
at java.net.Socket.connect(Socket.java:607) ~[na:1.8.0_242]
at java.net.Socket.connect(Socket.java:556) ~[na:1.8.0_242]
at com.sun.mail.util.SocketFetcher.createSocket(SocketFetcher.java:335) ~[jakarta.mail-1.6.4.jar:1.6.4]
at com.sun.mail.util.SocketFetcher.getSocket(SocketFetcher.java:214) ~[jakarta.mail-1.6.4.jar:1.6.4]
at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:2160) ~[jakarta.mail-1.6.4.jar:1.6.4]
... 38 common frames omitted