我正在尝试Wildfly 8.1
使用 Gmail 设置一些简单的邮件服务(用于测试)。
出于某种原因,每次我传输邮件时,Wildfly 都会尝试连接localhost
而不是分配的outbound-socket
!
错误:
13:22:34,164 ERROR [stderr] (default task-22) com.sun.mail.util.MailConnectException: Couldn't connect to host, port: localhost, 25; timeout -1;
13:22:34,164 ERROR [stderr] (default task-22) nested exception is:
13:22:34,165 ERROR [stderr] (default task-22) java.net.ConnectException: Connection refused: connect
13:22:34,165 ERROR [stderr] (default task-22) at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1984)
独立的.xml
...
<mail-session name="java:jboss/mail/gmail" debug="true" jndi-name="java:jboss/mail/gmail">
<smtp-server outbound-socket-binding-ref="mail-smtp" ssl="true" username="user@gmail.com" password="pass"/>
</mail-session>
...
<outbound-socket-binding name="mail-smtp">
<remote-destination host="smtp.gmail.com" port="465"/>
</outbound-socket-binding>
然后我只是尝试发送邮件:
@Stateless
public class SendMail {
@Resource(mappedName = "java:jboss/mail/gmail")
private Session mailSession;
public String send() {
MimeMessage m = new MimeMessage(mailSession);
try {
m.setRecipients(Message.RecipientType.TO, "test@mail.com");
m.setContent("Test from Wildfly","text/plain");
Transport.send(m);//throws exception
} catch (MessagingException e) {
e.printStackTrace();
}
...
我已经在注释中尝试了“ name
”和“ ”,但它只是一直想连接到,甚至没有.lookup
@Resource
localhost
outbound-socket
我错过了什么?