如何使用默认电子邮件客户端发送带有Java附件的电子邮件?

时间:2009-04-10 22:06:38

标签: java email attachment

我有一个生成PDF文件的Java程序。我希望用户单击按钮打开默认电子邮件客户端,准备将PDF作为附件发送。打开默认电子邮件客户端的两种标准方法存在问题:

  1. Java 6似乎不允许生成的消息中的附件
  2. JDIC存在一个错误,导致Outlook 2007无法正确发送邮件:http://jdic.dev.java.net/issues/show_bug.cgi?id=160
  3. 有人可以建议这样做吗?

    由于

3 个答案:

答案 0 :(得分:2)

JDIC提供了一些执行此操作的功能。尽管JDIC中的大部分都被Java 6中的java.awt.Desktop所吸收,但它并未包含电子邮件组合位。不幸的是,JDIC二进制文件随transition of java.net to the Kenai platform消失了;我将可以找到的最新版本上传到项目JIRA

JDIC在OSGi中表现不佳,所以我最近将相关的MAPI位提取到一个名为jmapi的包中。

(我也将此答案发布到another question。)

答案 1 :(得分:1)

javax.mail.internet.MimeMultipart消失了吗?这是设置附件的规范方式。

更新

好的,所以如果我直截了当,你想知道如何让你的应用程序在未指定的操作系统上使用未指定的电子邮件客户端来发送包含未定义附件的多部分MIME电子邮件,而不是通过构造MIME消息自己呢?

......好吧,好吧,我猜你提到Outlook所以它必须是Windows。但仍然。

答案 2 :(得分:0)

您是否有特定原因要使用默认电子邮件客户端,而不是使用电子邮件客户端(JavaMail)从Java发送?

您能否提供有关您尝试编写的应用程序类型的更多详细信息?我认为这是一个客户端GUI应用程序(Swing / SWT / AWT),但除此之外,我认为我们还需要更多细节。