`

javamail 关于SSL的问题找了我一个星期之久

阅读更多

关于javamail 使用SSl方式发送邮件的问题。我在官网上面终于找到答案了。

一直连接不上stmp.**.com:465的服务器时因为需要证书,而网上提供的生成证书的一个..java根本就没有用。

最后在官网上面看到了这段话。

 

In earlier releases it was necessary to explicitly set a socket
factory property to enable use of SSL.  In almost all cases, this
is no longer necessary.  SSL support is built in.  However, there
is one case where a special socket factory may be needed.

JavaMail now includes a special SSL socket factory that can simplify
dealing with servers with self-signed certificates.  While the
recommended approach is to include the certificate in your keystore
as described above, the following approach may be simpler in some cases.

The class com.sun.mail.util.MailSSLSocketFactory can be used as a
simple socket factory that allows trusting all hosts or a specific set
of hosts.  For example:

    MailSSLSocketFactory sf = new MailSSLSocketFactory();
    sf.setTrustAllHosts(true);
    // or
    // sf.setTrustedHosts(new String[] { "my-server" });
    props.put("mail.smtp.ssl.enable", "true");
    // also use following for additional safety
    //props.put("mail.smtp.ssl.checkserveridentity", "true");
    props.put("mail.smtp.ssl.socketFactory", sf);

Use of MailSSLSocketFactory avoids the need to add the certificate to
your keystore as described above, or configure your own TrustManager
as described below.(使用MailSSLSocketFactory避免了需要添加证书,你的密钥库如上所述,或配置自己的TrustManager。如下所述。

 实在是高兴啊。使用这个方法后马上使用SSL发送邮件的方式,发送成功了

官网还提供了一个自己实现的加密管理类,可以使用。在这里我就不贴上来了。直接上官网的地址。

http://www.oracle.com/technetwork/java/javamail145sslnotes-1562622.html

 

本人英语水凭能力不行,不能翻译。如果英语水平好。翻译出来,绝对是一个很好的资源。

 

分享到:
评论
1 楼 小雪椰 2015-04-27  
请问一下 MailSSLSocketFactory是在那个包里面? 要下JAF吗?

相关推荐

    JavaMail配置SSL服务器及安装证书

    1. **JavaMail API**: JavaMail API是Java平台上的一个标准API,用于处理邮件服务,包括SMTP、POP3和IMAP协议。它提供了丰富的类和接口,允许开发者创建复杂的邮件应用。 2. **SSL/TLS**: SSL(Secure Socket Layer...

    关于用javamail发送邮件时,由于邮件服务器要SSL,解决办法

    在IT行业中,发送电子邮件是一项常见的任务,而JavaMail是一个广泛使用的API,用于处理与电子邮件相关的各种操作。在尝试使用JavaMail发送邮件时,如果邮件服务器要求使用SSL(Secure Socket Layer)或TLS...

    javamail发送、接收邮件

    然后,使用`Session.getInstance()`方法创建一个邮件会话实例,其中传入`Properties`对象和`Authenticator`对象,后者用于身份验证。 2. **创建邮件消息**:使用邮件会话实例创建一个`MimeMessage`对象,设置发件人...

    javamail问题及解决方案

    本文将基于一个具体的JavaMail示例代码,探讨在使用JavaMail过程中常见的问题及其解决方案。 #### 一、连接问题 在JavaMail示例代码中,首先设置了邮件服务器的信息,例如: ```java String host = "smtp.163....

    ssl javamail相关资料,都奉献了

    javaMail 如果需要ssl加密处理的,建议使用chilkat,如果你是牛人,那你自己实现,其实张孝详老师写过一本关于javamail的书籍,大家可以参考,但是对于邮件加密这块没有做太多说明,java网络编程这本书中,对ssl加密...

    JavaMail 内存溢出问题

    JavaMail 是一个开源的 Java 库,用于处理电子邮件的发送、接收和管理。在实际使用过程中,可能会遇到内存溢出(Memory Overflow)的问题,这通常是由于邮件处理不当或资源管理不善导致的。本篇文章将深入探讨 ...

    javamail(带界面的javamail)

    JavaMail 是一个强大的开源库,用于在Java应用程序中实现电子邮件的发送和接收功能。它提供了丰富的API,使得开发者能够方便地处理SMTP、POP3、IMAP等邮件协议,支持多种邮件格式,包括文本、HTML以及带有附件的邮件...

    javamail.jar,javamail资源包

    JavaMail 是一个开源的 Java API,它为Java开发者提供了处理电子邮件的能力。这个API允许开发者发送、接收、管理邮件,包括附件、HTML 内容、MIME 多部分消息等。`javamail.jar` 文件是JavaMail的核心库,包含了所有...

    Javamail 两个jar包

    JavaMail 是一个强大的开源库,用于在Java应用程序中处理电子邮件。它提供了丰富的API,使得开发者可以方便地发送、接收和管理邮件。在这个压缩包中,包含的两个关键jar文件是"activation.jar"和"mail.jar",它们是...

    JavaMail 1.6.0 Final Release

    JavaMail 是一个开源的 Java API,它为开发者提供了在 Java 应用程序中发送和接收电子邮件的能力。这个“JavaMail 1.6.0 Final Release”是 JavaMail 的一个重要版本,它包含了对 SMTP(简单邮件传输协议)、IMAP...

    JavaMail发送给多人,添加多个附件

    javaMail

    javamail 视频源码 第一部分

    JavaMail 是一个开源的 Java API,它允许程序员通过 SMTP、POP3 或 IMAP 协议发送、接收和处理电子邮件。这个“javamail 视频源码 第一部分”很可能是张孝祥老师的一个教程系列,旨在帮助开发者深入理解如何使用 ...

    自己写的一个基于Javamail的邮件发送客户端

    JavaMail 是一个开源的 Java API,它允许开发者在 Java 应用程序中添加发送和接收电子邮件的功能。这个基于 Javamail 的邮件发送客户端项目,显然利用了这一强大的工具来构建一个 Web 界面,用于四川联通电子渠道的...

    JavaMail+JAF+JavaMail_API+JavaMail_API详解

    JavaMail 是一个开源的Java库,它为Java程序员提供了处理电子邮件的能力。这个库不仅支持SMTP、POP3和IMAP协议,还支持其他的邮件系统协议,如NNTP和EWS。JavaMail API是JavaMail库的核心部分,它提供了一系列的接口...

    javamail收发邮件加密和不加密

    JavaMail 是一个强大的开源库,用于在Java应用程序中处理电子邮件。它支持多种协议,包括POP3、IMAP和SMTP,这些协议分别用于接收、检索和发送邮件。在使用JavaMail时,了解如何进行加密和非加密通信对于确保数据...

    javaMail详解

    JavaMail 是一个开源的Java库,它为Java开发者提供了一套API来处理电子邮件。这个库不仅支持SMTP(简单邮件传输协议)、POP3(邮局协议)和IMAP(因特网消息访问协议),还提供了丰富的功能,如MIME(多用途互联网...

    关于javaMail的资料关于javaMail的资料

    JavaMail 是一个开源的 Java 库,用于处理电子邮件的发送、接收和管理。它提供了丰富的 API,使得开发者可以在 Java 应用程序中方便地实现邮件功能。本资料将深入探讨 JavaMail 的核心概念、使用方法及常见问题。 ...

    关于JavaMail和James邮件基础

    JavaMail是一个开源库,它提供了用于发送、接收和操作电子邮件的标准API。而James(Apache James)则是一个完整的邮件服务器,它支持SMTP、POP3和IMAP协议,同时也包含了邮件存储、过滤和管理等功能。 **JavaMail的...

    JavaMail完整JAR包

    JavaMail 是一个强大的开源库,专门用于在Java应用程序中处理电子邮件。这个完整JAR包包含了所有必要的组件,使得开发者能够方便地实现发送、接收、读取以及管理电子邮件。以下是JavaMail的一些关键知识点: 1. **...

Global site tag (gtag.js) - Google Analytics