JavaMail API 1.5.5を使用してGmailサーバーから認証済みのメールを送信しようとしています。JavaMail - 認証されたoauth2 smtpメールを送信
javaMailAPI 1.5.5 siteのチュートリアルに続き、this google toolを使用しましたが、メールを送信できませんでした。ここで
は私がやったことです:
private static void sendEmail(String _emailBody){
//used oauth2.py in order to retrieve the access token
String accessToken = getAccessToken(refresh_token,username,client_id,client_secret);
// Setup mail server
Properties props = new Properties();
props.put("mail.imap.ssl.enable", "true"); // required for Gmail
props.put("mail.imap.auth.mechanisms", "XOAUTH2");
Session session = Session.getInstance(props);
Store store = session.getStore("imap");
store.connect("imap.gmail.com", username, accessToken);
MimeMessage msg = new MimeMessage(session);
msg.setFrom(new InternetAddress(username));
msg.addRecipients(Message.RecipientType.TO, InternetAddress.parse(_email));
msg.setSubject("some subject");
msg.setText(_emailBody);
Transport.send(msg);
}
私は、次のexecption得た:私はまた、SMTPするプロパティの名前でIMAPを切り替えるしようとしましたが、その場合には
com.sun.mail.util.MailConnectException
Couldn't connect to host, port: localhost, 25; timeout -1
をプログラムが停止しました
store.connect("imap.gmail.com", username, accessToken);
どうすれば解決できますか?私はオンラインで検索しましたが、見つけられませんでした。
編集:
ない正確に示唆したように同じ質問。 2016年にリリースされたJavaMailAPI 1.5.5でoauth2認証を使用しています。接続方法が異なります。古いものは動作しません。
認証に問題があるとのことです。また、私はユーザー名とパスワードを使用していませんが、ユーザー名とアクセストークンはGoogleによって与えられます。
JavaメールAPIを使用してメールを送信中に[MailConnectException]が重複している可能性があります(http://stackoverflow.com/questions/20766044/mailconnectexception-while-sending-mail-using-java-mail-api) – DaImTo
@DalmTo正確ではありません。 2016年にリリースされたJavaMailAPI 1.5.5でoauth2認証を使用しています。接続方法が異なります。古いものは動作しません。認証に問題があるとのことです。 –
私はまた、ユーザー名とパスワードの代わりにユーザー名とアクセストークンに接続します。 –