19

我正在尝试发送带有附件的电子邮件,但发现 java 邮件 API 的不足令人恼火。

只有两个实现javax.activation.DataHandler要求我创建一个本地文件来发送附件。可能我必须编写自己的 DataHandler 实现,但此时我不想这样做。

提前致谢 !

艾迪

编辑:我的意思javax.activation.DataSource不是javax.activation.DataHandler

4

3 回答 3

10

Spring 为JavaMail API 提供了一个部分包装器,使它更容易被接受。

例如,MimeMessageHelper该类允许您使用各种接口添加附件,包括来自通用InputStream来源的附件。

JavaMail 的底层机制非常全面和强大,只是 API 很垃圾。这在很大程度上解决了这个问题。

于 2010-01-19T14:23:17.583 回答
2

您是否尝试过apache commons来完成这项任务?
它有MultiPartEmail,它有几个重载的attach方法。

于 2010-01-19T14:03:55.823 回答
1

编写自定义 DataSource 非常容易(一年前我为我们的一个应用程序组合了一个,只用了不到一个小时)。如果这是您在使用 JavaMail 时遇到的唯一问题,我建议您试一试。

也就是说,我同意 JavaMail 对于最常见的用例来说绝对过于复杂。

于 2010-01-20T02:56:18.803 回答