我正在尝试从交换服务器 2010 读取邮件,但有时连接已建立,但剩余时间程序给出以下异常:
javax.mail.AuthenticationFailedException:登录失败
该代码在 exchange server 2007 上运行良好。但是从邮箱迁移到 2010 年,该程序仅以这种方式运行。
我也尝试了网上可用的几个选项,但没有任何效果。我正在使用 javamail-1.4.4 API 版本。这是我试图连接到邮箱的一段代码。
public class ReadMail {
static Store store=null;
static String host="";
static String username="";
static String password="";
public static void main(String[] arg) throws Exception{
try{
Session session;
username = "username";
password = "password";
host = "hostname";
Properties props = System.getProperties();
props.setProperty("mail.smtp.auth","true");
session = Session.getInstance(props,
new ExchangeAuthenticator(username, password));
Store st = session.getStore("imaps");
st.connect(host,username, password);
System.out.println("Connected");
}
catch (Exception e){
e.printStackTrace(System.out);
}
}
}
public class ExchangeAuthenticator extends Authenticator {
String user;
String pw;
public ExchangeAuthenticator (String username, String password)
{
super();
this.user = username;
this.pw = password;
}
public PasswordAuthentication getPasswordAuthentication()
{
return new PasswordAuthentication(user, pw);
}
}