2

我创建了一个公共日历文件夹,但没有一个用户看到它。它应该与他人共享。

这是我的代码:

FolderView fv = new FolderView(50);
fv.setTraversal(FolderTraversal.Deep);
FindFoldersResults f = service.findFolders(WellKnownFolderName.PublicFoldersRoot, fv);

问题是它抛出java.lang.NullPointerException

microsoft.exchange.webservices.data.EWSHttpException: Connection not established

当我将其更改为WellKnownFolderName.Root日历或收件箱等任何其他常量时,它工作正常。不过,我可以使用 Outlook 查看内容。

如果我看不到公共日历文件夹并且也不知道 ID,如何使用 Java 访问它?

4

2 回答 2

1

如果您知道共享文件夹的人/资源的电子邮件地址,那么这可能有效

//Create a inclusive view
FolderView fv = new FolderView(100);
fv.setTraversal(FolderTraversal.Deep);

//Find ID of parent calendar
FolderId sharedFolderId = new FolderId(WellKnownFolderName.Calendar, new Mailbox("email.address@of-thing-sharing-calendar"));

//Find children of that calendar
FindFoldersResults findResults = service.findFolders(sharedFolderId, fv);
于 2015-02-03T16:00:58.010 回答
0

这里有一个工作示例:Can't connect to (EWS) Public Calendar Folder Java它包含一个示例 java 类,应该使用 Java EWS API 编译和运行

于 2016-08-19T14:54:17.350 回答