我已经在我的应用程序中找到了要发送电子邮件的地方。我发现这个web page that描述了GlassFish如何让一个容器让容器为你处理一切。
或者,我可以编写自己的线程,它可以从 BlockingQueue 中获取作业,并构建自己的 javax.mail.Session 对象。我实际上已经做到了这一点,它似乎工作。实际上并没有那么复杂,我将所有 javax.mail。导入组合成一个类。
问题是:使用GlassFish服务可以获得任何有价值的优势吗?
我唯一能想到的是GlassFish为电子邮件提供配置实用程序(服务器,身份验证等)。我的网络应用程序已经具备了管理员用户的能力,因此这对我来说不是什么大问题。
除此之外,如果我使用它,我的应用程序是否已连接到GlassFish,因此如果我有需要,我会将问题移植到其他容器中?
非常感谢那些能够分享经验的人。
答案 0 :(得分:2)
这基本上不是关于好的或坏的选择。 javax.mail的内容是内置的,并提供处理邮件所需的一切。 如果您在任何应用程序服务器中使用Thread和BlockingQueue,您最终将不得不使用JCA,因为其他一切都会破坏java ee规范。因此,使用提供的邮件工具在应用程序服务器上运行它始终是正确的选择。 据我所知,javax.mail与GlassFish的集成没有任何魔力。没有什么可以反对使用它......