将已发送的邮件保存到用户的已发送邮件文件夹

时间:2016-03-10 15:37:43

标签: java spring exchangewebservices

我使用EWS-Java-API。

我有一个登录“管理员邮件”的系统。然后我让用户拥有自己的邮件,向买家或其他人发送邮件。现在,当用户发送邮件时,它会将邮件保存在管理员“SENT ITEMS文件夹”中,但我希望它们保存在用户的文件夹中。

Mailbox mb = new Mailbox();
mb.setAddress(from.trim());
FolderId SentFolderForUser = new FolderId(WellKnownFolderName.SentItems, mb);
emailMessage.sendAndSaveCopy(SentFolderForUser);

引起:

  

microsoft.exchange.webservices.data.core.exception.service.remote.ServiceResponseException:在商店中找不到指定的对象。,该过程未能获得正确的属性。

有更好的方法吗?

1 个答案:

答案 0 :(得分:1)

该错误意味着"管理邮件"没有mb中用户的SentItems文件夹的权限(您可以通过首先尝试绑定到文件夹来测试它)

文件夹SendItems = Folder.Bind(service,SentFolderForUser);

您需要提供"管理邮件"用户通过Add-Mailboxpermission https://technet.microsoft.com/en-us/library/bb124097(v=exchg.160).aspx访问邮箱。

干杯 格伦