从MS Exchange检索附件的最佳方法

时间:2012-09-11 20:11:06

标签: java javamail exchange-server mapi

我们尝试使用JavaMail API一段时间了,但我们偶尔收到此错误报告记录的ArrayIndexOutOfBounds错误: http://kenai.com/bugzilla/show_bug.cgi?id=3155

它被标记为已修复,但实际上我们仍然存在该错误。此外,使用JavaMail检索附件的性能始终非常慢。即使与Exchange在同一网络上,大约10 KB / s的顺序,所以我们决定尝试不同的方法。

我们发现使用名为MoonRug的Mapi客户端可以获得更好的性能:http://www.moonrug.com/features.html

这比JavaMail好得多,但我们仍然有错误,然后连接到Exchange并下载附件(大小从3KB到20MB不等)。

我开始怀疑是否直接使用Java调用Exchange是我们采取的正确方法。有没有人建议更好的方法来做到这一点?我们主要是一个java商店,但如果有一个不同的工具或技术可以从Exchange接收电子邮件并将它们放在文件系统的某个地方,以便java进程读取和处理,这对我们来说是一个选项。

此应用程序的目标是将传入的邮件存储在某个收件箱中,并将它们和附件保存到用户可以与之交互的后端系统中。我们目前正在进行拉动过程,我们每分钟都会对收件箱进行轮询。如果有一种方法可以通过直接将某些内容集成到Exchange Server中来获取电子邮件并将其自动导出到文件系统(这也是我们的选项)。

1 个答案:

答案 0 :(得分:2)

您可能需要查看DavMail。它是基于Java的,它确实访问Exchange。它可能会也可能不会为您提供可以使用的代码。否则,它可能允许您将其用作基于JavaMail的应用程序和Exchange之间的网关。