邮件读取连接时报
javax.mail.AuthenticationFailedException: EOF on socket错误解决方法:
当邮件读取需要SSL认证时连接需采用:
Properties pop = new Properties();
pop.setProperty("mail.pop3.socketFactory.class" , "javax.net.ssl.SSLSocketFactory");
pop.setProperty("mail.pop3.socketFactory.port",port);
pop.put("mail.smtp.auth", "true");
pop.put("mail.smtp.starttls.enable",Config.getConfig("mail-server","starttls"));
pop.put("mail.smtp.host", host);
pop.put("mail.mime.address.strict", "false");
pop.put("mail.smtp.connectiontimeout", Config.getConfig("mail-server", "connect-timeout"));
pop.put("mail.smtp.timeout", Config.getConfig("mail-server", "send-timeout"));
PopAuthenticator authenticatior = null;
if (Config.getConfig("mail-server", "authenticate").equalsIgnoreCase("TRUE")) {
authenticatior = new PopAuthenticator();
authenticatior.performCheck(userName, passWord);
}
this.session = Session.getDefaultInstance(pop, authenticatior);
Folder folder = null;
Store store = null;
try {
URLName urln = new URLName("pop3",host, Integer.parseInt(port), null,userName, passWord);
store = session.getStore(urln);
store.connect();
//不能采用下面这种连接方式,如果采用下面这种连接方式就会报以上错误
//store = session.getStore("pop3");
//if(port != null && !port.equals("")) {
//store.connect(host,Integer.parseInt(port), userName, passWord);
//}else {
//store.connect(host, userName, passWord);
//}
folder = store.getFolder("INBOX");
folder.open(Folder.READ_WRITE);
Message[] message = folder.getMessages();
log.info("all mail size = " + message.length);
} catch (MessagingException e) {
log.error("邮件服务器连接错误!"+e.getMessage());
e.printStackTrace();
} catch(Exception e){
log.error(e.getMessage());
e.printStackTrace();
}finally {
try {
if (folder != null)
folder.close(true);
if (store != null)
store.close();
} catch (MessagingException e) {
e.printStackTrace();
}
}
分享到:
相关推荐
JavaMail邮件系统开发是Java开发者在构建应用程序时用于发送和接收电子邮件的重要工具。它是一个开源的API,提供了丰富的功能,让开发者能够轻松地与各种邮件服务器进行交互。在这个主题中,我们将深入探讨JavaMail...
JavaMail邮件实战开发 在 JavaMail 邮件实战开发中,我们学习了电子邮件技术的基础知识,包括邮件服务器、邮件传输协议和邮件组织结构。 邮件服务器 邮件服务器是提供电子邮件功能的专门服务器,它有三个主要功能...
综上所述,这个压缩包提供了一整套关于使用JavaMail开发邮件收发系统的资源,从理论到实践,从设计到实现,再到最终的答辩准备,对于学习和开发此类系统的人来说,是一份非常宝贵的参考资料。通过深入学习和实践这些...
1、打开javamailsystem文件夹,找到javamail.jar可执行文件,双击该执行文件,即可打开Javamail邮件收发系统客户端软件。进入该系统后,首先选择“POP3/SMTP设置”按钮,对收发邮件所需的邮件服务器主机、收发邮件...
### JavaMail邮件开发详解 #### 一、JavaMail API简介 JavaMail API 是一个用于读取、撰写和发送电子邮件的强大工具包。它主要用于构建邮件用户代理程序(Mail User Agent,简称 MUA),这类程序通常包括像 Eudora...
本文介绍了Javamail邮件收发系统的开发背景,对国内外现有的多种成熟的电子邮件系统进行分析和比较,总结出它们的优缺点,对Javamail技术进行深入研究,提出并设计实现了基于Javamail的邮件收发系统。本系统利用SMTP...
JavaMail邮件实战开发资料主要涉及的是使用Java编程语言发送和接收电子邮件的技术。JavaMail是一个开源API,它提供了在Java应用程序中处理电子邮件的功能。这个资料可能是针对开发者,特别是那些需要在项目中集成...
**基于Javamail的邮件收发系统** JavaMail是一个开放源码的API,它为Java程序员提供了一套全面的接口来处理电子邮件。这个系统的设计目的是使得开发者能够方便地发送和接收邮件,包括附件、HTML内容以及MIME多部分...
本文介绍了Javamail邮件收发系统的开发背景,对国内外现有的多种成熟的电子邮件系统进行分析和比较,总结出它们的优缺点,对Javamail技术进行深入研究,提出并设计实现了基于Javamail的邮件收发系统。本系统利用SMTP...
javamail邮件开发包,用于邮件的收发和设计,用户在自己开发邮件客户端软件时需要用到
### JavaMail邮件开发系统教程知识点总结 #### 一、引言 JavaMail API是由Sun Microsystems为Java开发者提供的一套强大的邮件处理工具集。它支持多种邮件通信协议(如SMTP、IMAP、POP3等),并为Java应用程序提供了...
2. IMAP 和 POP3 协议:对于邮件接收,JavaMail 提供了 `Folder` 和 `Message` 类来处理IMAP或POP3服务器上的邮箱。IMAP 允许用户在线查看邮件,而POP3通常将邮件下载到本地存储。使用 `Store` 类连接到服务器,然后...
【标题】:基于JavaMail的电子邮件收发系统设计说明 【描述】:本文档详细介绍了如何使用JavaMail技术设计和实现一个电子邮件收发系统,涵盖了系统设计的目标、国内外发展趋势、技术选型、需求分析、详细设计以及功能...
### 邮件接收流程 1. **配置 Properties**: 设置 POP3 或 IMAP 服务器信息。 2. **创建 Session**: 创建用于连接邮件服务器的 Session。 3. **获取 Store**: 通过 Session 的 `getStore()` 方法获取相应的 Store ...
本文介绍了Javamail邮件收发系统的开发背景,对国内外现有的多种成熟的电子邮件系统进行分析和比较,总结出它们的优缺点,对Javamail技术进行深入研究,提出并设计实现了基于Javamail的邮件收发系统。本系统利用SMTP...
JavaMail 是一个开源的 Java API,它允许开发者在 Java 应用程序中发送和接收电子邮件。这个基于 Javamail 的邮件收发系统是利用 JavaMail 提供的接口和类来构建的一个完整的邮件处理系统。该系统可能包含了多个组件...
总结,基于Javamail的邮件收发系统是Java编程领域的一个实用案例,涵盖了网络通信、邮件协议、API使用等多个重要知识点,对于学习和掌握Java开发具有很高的参考价值。通过这个项目,开发者可以深入理解电子邮件的...
本文介绍了Javamail邮件收发系统的开发背景,对国内外现有的多种成熟的电子邮件系统进行分析和比较,总结出它们的优缺点,对Javamail技术进行深入研究,提出并设计实现了基于Javamail的邮件收发系统。本系统利用SMTP...
### JavaMail 1.3 收发邮件开发教程知识点概览 #### 一、JavaMail API简介 **JavaMail API** 是由SUN公司(现已被Oracle收购)为Java开发者提供的一个公共API框架,用于在Java应用中实现电子邮件功能的支持。它的...
JavaMail是Java编程语言中用于处理电子邮件的API,它提供了丰富的功能,允许开发人员发送、接收和管理电子邮件。JavaMail API支持多种邮件协议,包括SMTP(简单邮件传输协议)用于发送邮件,以及POP3(邮局协议第3版...