简体   繁体   中英

How to access outlook public folders using Java?

Using Java I want to access certain Outlook public folders. I tried below code

Properties props = System.getProperties();
Session session = Session.getDefaultInstance(props);
session.setDebug(true);
Store store = session.getStore("imap");
store.connect("imap4.<something>.com", "<my user id>", "<my password>");
Folder folder = store.getFolder("Public Folders/");
folder.open(Folder.READ_ONLY);
Message[] messages = folder.getMessages();
if(messages.length == 0){
    System.out.println("no message");
}
for(Message message : messages){
    System.out.println(message.getSubject());
}

I have tried different combinations for "Public Folders". Every time I get:

Exception in thread "main" javax.mail.FolderNotFoundException: Public Folders/ not found
    at com.sun.mail.imap.IMAPFolder.checkExists(IMAPFolder.java:302)
    at com.sun.mail.imap.IMAPFolder.open(IMAPFolder.java:885)
    at MailReader.main(MailReader.java:23)

Please let me know if there is any way to access Outlook public folders.

The way I used in one of my projects was EWS Java API. Here's a link to some tutorial: http://blogs.msdn.com/b/exchangedev/archive/2013/01/03/ews-java-api-1-2-get-started.aspx It's not the easiest thing I've ever done though.

看起来Microsoft 删除了通过Exchange 2007中的IMAP协议访问公用文件夹的功能,并且他们没有恢复它的计划。

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM