我想鼓励我们的 RCP 应用程序的用户将问题详细信息发送给我们的支持部门。为此,我在标准错误对话框中添加了“联系支持”小部件。
我已经设法使用 URI 标头通过 Java 6 的 JDIC 调用发送堆栈跟踪:Desktop.getDesktop().mail(java.net.URI)
. 这将启动用户的邮件客户端,准备好让他们添加评论,然后点击发送。
我喜欢启动电子邮件客户端,因为它是用户习惯的,它告诉支持人员很多关于用户的信息(签名、联系方式等),我真的不想使用 Java Mail。
我想做的是将日志文件和堆栈跟踪作为文件附加,因此没有最大长度要求,用户会看到一封漂亮干净的电子邮件,并且支持部门有更多信息可供使用。
我可以用我正在采取的方法做到这一点吗?或者,还有更好的方法?
编辑:我在 OSGi 上下文中,所以捆绑 JDIC 是必要的。如果可能的话,我希望提供尽可能少的依赖项,并且为多个平台捆绑 JDIC 听起来并不有趣,尤其是对于这样一个小功能。
JavaMail 可能是合适的,但事实上这将在我们公司客户的桌面上。配置的设置/发现必须是透明的、自动的和可靠的。关于 JavaMail,配置似乎只是手动的。是这样吗?
我最喜欢的答案是使用Desktop.open()
*.eml 文件。不幸的是Outlook Express(而不是 Outlook)打开 eml 文件。我不知道这是否是通常或默认配置 Windows 以打开这样的 EML 文件。这是平常的吗?或者是否有另一种基于文本的格式,a) 易于生成,b) 默认情况下在用户已经使用的同一电子邮件客户端中打开?