2016-12-06 3 views
0

Когда я пытаюсь получить доступ в свой почтовый ящик, какНевозможно получить доступ к общему почтовому ящику кругозора с Java IMAPS

store.connect("imaps store address", 993, "[email protected]","PASSWORD"); 

я могу получить доступ к почтовому ящику. Но когда я попытался, как следующее:

store.connect("imaps store address", 993, "[email protected]/sharedmailbox_name","PASSWORD"); 

или

store.connect("imaps store address", 993, "[email protected]/[email protected]","PASSWORD"); 

Я получаю эту ошибку:

Connecting to the IMAP server...javax.mail.AuthenticationFailedException: AUTHENTICATE failed. at com.sun.mail.imap.IMAPStore.protocolConnect(IMAPStore.java:725) at javax.mail.Service.connect(Service.java:366) at pkg.finale.test.CheckOutlook.initiate(CheckOutlook.java:38) at pkg.finale.test.CheckOutlook.main(CheckOutlook.java:17)

Вот код:

import java.util.Properties; 

public class CheckOutlook { 

    public static void main(String[] args) { 
     initiate(); 
    } 

public static void initiate(){   
    try { 
     Properties properties = System.getProperties(); 
     properties.setProperty("mail.imaps.auth.ntlm.disable", "false"); 
     properties.setProperty("mail.protocol.ssl.trust", "true"); 
     properties.put("mail.imap.starttls.enable", "true"); 
     Session session = Session.getInstance(properties, null); 

     System.out.print("Connecting to the IMAP server..."); 

     String storeName = "imaps"; 
     Store store = session.getStore(storeName); 
     store.connect("imaps store address", 993,"[email protected]/SharedMailboxName","Password"); 

     System.out.println("Connected To server: Done!"); 
     Folder[] f = store.getDefaultFolder().list(); 
     for(Folder fd:f) 
       System.out.println(">> "+fd.getName()); 
     System.out.println(); 
      Folder inbox = store.getFolder("inbox"); 
      inbox.open(Folder.READ_WRITE); 
      Message messages[] = inbox.search(new FlagTerm(new Flags(Flag.SEEN), false)); 
     } 
     catch(Exception E){ 
      E.printStackTrace(); 
     } 
    } 
+0

Является ли этот Outlook связанным? –

+0

Я переместил ваше заявление о проблемах перед вашим кодовым блоком. Обычно проще переваривать код с некоторым контекстом. – Chris

+0

Да, я пытаюсь подключиться к Microsoft Exchange Outlook. и у меня все еще проблема. – Bramha

ответ

0

Наконец я взломал но с использованием EWS Api.

ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2010_SP1); 
String username = "[email protected]"; 
ExchangeCredentials credentials = new WebCredentials(username,Password); 
service.setCredentials(credentials); 
service.autodiscoverUrl(username); 
ItemView view = new ItemView (10); 
Mailbox mb = new Mailbox(); 
mb.setAddress("[email protected]"); 
FolderId folderId = new FolderId(WellKnownFolderName.Inbox, mb); 
FindItemsResults<Item> findResults = service.findItems(folderId, view); 
for (Item item1 : findResults.getItems()) { 
    item1.load(); 
    System.out.println(item1.getSubject()); 
} 
+0

@Brama: можете ли вы помочь мне получить папки из общих папок. Я получаю сообщение об ошибке «Нет доступных серверов общих папок», когда я попытался заменить строку в вашем коде FolderId folderId = new FolderId (WellKnownFolderName.Inbox, mb); с FolderId folderId = new FolderId (WellKnownFolderName.PublicFoldersRoot, mb); – yatinbc

Смежные вопросы