Tomcat中JNDI的Java Mail API配置文档

栏目: Java · 发布时间: 7年前

内容简介:x.mail.Session并进行身份验证,现在我得到了它,但只是在深入研究代码之后.在这段时间里,我看到了有史以来最糟糕的代码:javax.mail.Service #connect(String,String,String,String)Version 1.4.1密码何时分配?为什么两次检查null? – 然后意识到其他不属于if if. (这是原始的缩进).回到主题.
我花了几天的时间来弄清楚如何通过JNDI在Tomcat中配置 java

x.mail.Session并进行身份验证,现在我得到了它,但只是在深入研究代码之后.

在这段时间里,我看到了有史以来最糟糕的代码:javax.mail.Service #connect(String,String,String,String)Version 1.4.1

if (user == null) {
    user = url.getUsername();
    if (password == null)   // get password too if we need it
        password = url.getPassword();
    } else {
    if (password == null && user.equals(url.getUsername()))
        // only get the password if it matches the username
        password = url.getPassword();
    }

密码何时分配?为什么两次检查null? – 然后意识到其他不属于if if. (这是原始的缩进).回到主题.

至少我发现正确的资源定义是:

<Resource name="email/session"
    type="javax.mail.Session"
    auth="Container"
    password="secret"

    mail.debug="false"
    mail.transport.protocol="smtp"

    mail.smtp.auth="true"
    mail.smtp.user="testi"
    mail.smtp.host="smtp.xxx.org"
    mail.smtp.from="test@example.com"       
    />

请注意它是“password”和“mail.smtp.user”或“mail.user”而不是“mail.smtp.password”或“user”.

至少魔术是在Tomcats org.apache.naming.factory.MailSessionFactory中完成的.如果属性密码和属性mail.smtp.user或mail.user退出,则此工厂将javax.mail.Authenticator添加到邮件会话.

现在我的问题是所有这些东西的文档在哪里.特别是关于用户名和密码的配置?

顺便说一句:我解释得更详细一些,以帮助其他人如何解决同样的问题.


以上所述就是小编给大家介绍的《Tomcat中JNDI的Java Mail API配置文档》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

程序员之禅

程序员之禅

[德] Christian Grobmeier / 荣耀、朱艳 / 人民邮电出版社 / 2015-8 / 39.00元

禅是一种生活态度和生活方式。程序员是一份特别辛苦的职业,也是一个承受各种压力的群体。在物欲横流的今天,禅对于程序员有着特殊的意义和价值。 本书的作者是一名德国程序员老兵,深谙程序员的喜怒哀乐。他曾经发表了一篇题为“程序员之禅的十条法则”的博客文章,引发众多程序员热烈的讨论和强烈的共鸣。本书共10章,结合程序员日常生活和工作的方方面面,作者通过对禅的知识、理解、体验、思考和感悟,提出很多中肯的......一起来看看 《程序员之禅》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器