我面临以下例外:
javax.mail.MessagingException: 220 cnsmail.company.local Microsoft ESMTP MAIL Service ready at Fri, 29 Aug 2014 05:42:13 -0400;
nested exception is:
com.sun.mail.iap.ConnectionException: 220 cnsmail.company.local Microsoft ESMTP MAIL Service ready at Fri, 29 Aug 2014 05:42:13 -0400
at com.sun.mail.imap.IMAPStore.protocolConnect(IMAPStore.java:569)
at javax.mail.Service.connect(Service.java:288)
at javax.mail.Service.connect(Service.java:169)
at com.cinnova.Email.MailReader.<init>(MailReader.java:59)
at com.cinnova.Email.MailReader.main(MailReader.java:30)
Caused by: com.sun.mail.iap.ConnectionException: 220 cnsmail.company.local Microsoft ESMTP MAIL Service ready at Fri, 29 Aug 2014 05:42:13 -0400
at com.sun.mail.imap.protocol.IMAPProtocol.processGreeting(IMAPProtocol.java:230)
at com.sun.mail.iap.Protocol.<init>(Protocol.java:114)
at com.sun.mail.imap.protocol.IMAPProtocol.<init>(IMAPProtocol.java:104)
at com.sun.mail.imap.IMAPStore.protocolConnect(IMAPStore.java:538)
... 4 more
这是我的代码,我试图连接到邮件服务器以使用Java读取邮件。
Properties props = new Properties();
props.put("mail.imap.port", "25");
Session session = Session.getDefaultInstance(props, null);
Store store = session.getStore("imap");
store.connect(ServerIP, "cma", "C0rnh0le$8");
当系统尝试编译行store.connect(ServerIP, "cma", "C0rnh0le$8");
时,它会生成上面提到的异常,我找到了
StackOverflow上有this和this,但在添加jar后没有得到任何帮助。
定义协议
SMTP - 是发送电子邮件的协议
POP3 - 是接收电子邮件的协议
IMAP - IMAP是Internet消息访问协议的首字母缩写。它是一种用于接收消息的高级协议。
答案 0 :(得分:2)
默认的IMAP端口是143.您使用的是默认的SMTP端口,25。这应该可以解决您的问题,假设主机/用户名/密码正确无误!
干杯,快乐的编码。