当前位置: 首页 > 知识库问答 >
问题:

使用java发送邮件

熊锐进
2023-03-14

我试图从域发送邮件,但得到一些错误。

package SendingClass;

import java.util.*;  

import java.util.Date;
import java.util.Properties; 
import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.MessagingException;

import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

public class SendEmail  
{  
public static void main(String [] args)
{
    String host="chnmail.hcl.com";
    final String user="allwinjayson.m@hcl.com";
    final String password="*******";
    String to="allwinjayson.m@hcl.com";

    //Get the session object  
    Properties props = new Properties();  
    props.put("mail.smtp.host",host);  
    props.put("mail.smtp.auth", "true");  


    //new
    Session session = Session.getDefaultInstance(props,  
    new javax.mail.Authenticator() 
    {  
            protected PasswordAuthentication getPasswordAuthentication() 
            {  
                return new PasswordAuthentication(user,password);  
            }  
    });  


     //Compose the message  
    try 
    {  
        MimeMessage message = new MimeMessage(session);  
        message.setFrom(new InternetAddress(user));
        message.addRecipient(Message.RecipientType.TO,new InternetAddress(to));
        message.setSubject("Praise the Lord");
        message.setText("This is simple program of sending email using JavaMail API");

        //send the message  
         Transport.send(message);  
         System.out.println("message sent successfully...");  
    } 
    catch (MessagingException e) 
    {
        e.printStackTrace();
    }  
}
}  
javax.mail.AuthenticationFailedException: No authentication mechansims supported by both server and client
    at com.sun.mail.smtp.SMTPTransport.authenticate(SMTPTransport.java:756)
    at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:669)
    at javax.mail.Service.connect(Service.java:313)
    at javax.mail.Service.connect(Service.java:172)
    at javax.mail.Service.connect(Service.java:121)
    at javax.mail.Transport.send0(Transport.java:190)
    at javax.mail.Transport.send(Transport.java:120)
    at SendingClass.SendEmail.main(SendEmail.java:63)

共有1个答案

冯宪
2023-03-14

在服务器允许您登录之前,您很可能需要启用SSL/TLS。根据服务器的要求,将属性mail.smtp.ssl.enablemail.smtp.starttls.enable设置为true

此外,您还希望清理一些常见的JavaMail错误。

 类似资料:
  • 问题内容: 我正在尝试使用Java发送电子邮件: 我收到错误消息: 此代码可以发送电子邮件吗? 问题答案: 户名+密码不再是推荐的解决方案。这是因为 我尝试了此操作,Gmail向该代码中用作用户名的电子邮件发送了一封电子邮件,其中说我们最近阻止了你的Google帐户的登录尝试,并将我定向到此支持页面:support.google.com/accounts/answer/6010255因此它看起来很

  • 本文向大家介绍基于java使用JavaMail发送邮件,包括了基于java使用JavaMail发送邮件的使用技巧和注意事项,需要的朋友参考一下 一、邮件的相关概念 邮件协议。主要包括: SMTP协议:Simple Mail Transfer Protocol,即简单邮件传输协议,用于发送电子邮件 POP3协议:Post Office Protocol 3,即邮局协议的第三个版本,用于接收邮件 IM

  • 我想用Java从我的公司Outlook帐户发送邮件。但它说邮箱无法访问。我试过各种解决方案,比如更改主机名,但还是不行。错误保持不变。请对此提出任何解决方案。下面是我面临的错误片段。注意:我使用javax mail来实现这个目的。

  • 我下载了Office 365 Connect ASP。NET MVC示例代码http://dev.office.com/code-samples-detail/5985,将其注册为Azure Active Directory中的应用程序(我具有全局管理员权限),并授予其所需的权限-“登录并读取用户配置文件”和“以用户身份发送邮件”(无其他权限),以及配置了web。配置为“ClientID”和“Cl

  • 本文向大家介绍python3使用QQ邮箱发送邮件,包括了python3使用QQ邮箱发送邮件的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了python3使用QQ邮箱发邮件的具体代码,供大家参考,具体内容如下 直接上代码 如果登录失败可能是你的qq邮箱没有启动SMTP 解决: 启动后QQ会提供授权码,将代码中密码改为授权码即可。 成功后: 以上就是本文的全部内容,希望对大家的学习有所帮

  • 问题内容: 用Java发送和接收邮件的最简单方法是什么。 问题答案: 不要忘记Jakarta Commons Email 发送邮件。它具有非常易于使用的API。