Microsoft Exchange Server är en e-postserver som tillhandahåller e-post, kalender, kontakthantering och andra samarbetstjänster. Den kan enkelt anslutas och nås från din webb- eller skrivbordsapplikation. Således kan du kommunicera med Exchange Server och komma åt e-post, kontakter, kalendrar etc. I den här artikeln kommer du att lära dig hur du ansluter till MS Exchange Server och läser e-postmeddelanden med Java.
- Java API för att arbeta med MS Exchange Server
- Anslut till MS Exchange Server i Java
- Läs e-postmeddelanden från MS Exchange Server i Java
- Skaffa en gratis API-licens
Java API för att arbeta med MS Exchange Server
Aspose.Email for Java är ett kraftfullt API som ger dig ett brett utbud av e-posthanteringsfunktioner. Det låter dig implementera funktionsrika e-postklienter från dina Java-applikationer. Dessutom ger API:et dig tillgång till mappar, undermappar, e-postmeddelanden, kalendrar, kontakter etc. från MS Exchange Server. Du kan antingen ladda ner API:s JAR eller installera den med hjälp av följande Maven-konfigurationer.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>http://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-email</artifactId>
<version>21.2</version>
<classifier>jdk16</classifier>
</dependency>
Anslut till MS Exchange Server i Java
För att kunna arbeta med MS Exchange Server måste du först upprätta en anslutning. Aspose.Email för Java tillhandahåller följande sätt att ansluta till en Exchange-server.
- Använda Exchange Web Service (EWS)
- Använda Internet Message Access Protocol (IMAP)
Anslut till Exchange Server med EWS i Java
Följande är stegen för att ansluta till Exchange Server via EWS.
- Skapa en instans av klassen IEWSClient.
- Använd metoden EWSClient.getEWSClient(String, String, String, String) för att initiera EWSClient-objekt.
Följande kodexempel visar hur du ansluter till MS Exchange Server med EWS i Java.
// Skapa en instans av IEWSClient-klassen för att ansluta till Exchange Server
IEWSClient client = EWSClient.getEWSClient("https://exchange.domain.com/ews/Exchange.asmx/", "user", "password", "");
Anslut till Exchange Server med IMAP i Java
Innan du försöker ansluta till Exchange Server med IMAP, se till att du har aktiverat IMAP-tjänster. När det är gjort är följande steg för att ansluta till en Exchange Server med IMAP.
- Skapa en instans av klassen ImapClient och initiera den med adress, port, användarnamn och lösenord.
- Få åtkomst till meddelanden, kontakter etc. med hjälp av objektet ImapClient.
Följande kodexempel visar hur du ansluter till Exchange Server med IMAP.
// Anslut till Exchange Server med ImapClient-klassen
ImapClient imapClient = new ImapClient("imap.gmail.com", 993, "username", "password");
Läs e-postmeddelanden från MS Exchange Server i Java
När du har anslutit till Exchange-servern kan du läsa meddelanden från servern. Du kan göra det med EWS eller IMAP.
Läs e-postmeddelanden från MS Exchange Server med EWS
Följande är stegen för att läsa e-postmeddelanden från Exchange Server med EWS.
- Skapa en instans av klassen IEWSClient.
- Använd metoden EWSClient.getEWSClient(String, String, String, String) för att initiera EWSClient-objekt.
- Hämta lista med meddelandeinformation från inkorgen till objektet ExchangeMessageInfoCollection med metoden EWSClient.listMessages(EWSClient.getMailboxInfo().getInboxUri()).
- Gå igenom varje ExchangeMessageInfo-objekt i samlingen för att läsa meddelandet.
Följande kodexempel visar hur man läser meddelanden från Exchange Server via EWS i Java.
// Skapa instans av ExchangeWebServiceClient-klassen genom att ge referenser
IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");
// Ring ListMessages-metod för att lista meddelandeinformation från inkorgen
ExchangeMessageInfoCollection msgCollection = client.listMessages(client.getMailboxInfo().getInboxUri());
// Gå igenom samlingen för att få meddelande-URI
for (ExchangeMessageInfo msgInfo : msgCollection) {
String strMessageURI = msgInfo.getUniqueUri();
// Få nu meddelandedetaljerna med FetchMessage()
MailMessage msg = client.fetchMessage(strMessageURI);
// Visa meddelandeinformation
System.out.println("Subject: " + msg.getSubject());
//Console.WriteLine("HTML Body: " + msg.HtmlBody);
// Hur många bilagor
System.out.println("Number of attachments: " + msg.getAttachments().size());
// Lista bilagorna
for (Attachment att : msg.getAttachments()) {
System.out.println("Attachment Name: " + att.getName());
}
}
Läs e-postmeddelanden från MS Exchange Server med IMAP
Följande är stegen för att läsa e-postmeddelanden från Exchange Server med IMAP.
- Skapa en instans av klassen ImapClient och initiera den med adress, port, användarnamn och lösenord.
- Hämta listan med meddelandeinformation till objektet ImapMessageInfoCollection med metoden ImapClient.listMessages().
- Gå igenom varje ImapMessageInfo-objekt i samlingen för att läsa e-postmeddelandena.
Följande kodexempel visar hur man läser e-postmeddelanden från Exchange Server via IMAP med Java.
// Anslut till Exchange Server med ImapClient-klassen
ImapClient imapClient = new ImapClient("imap.gmail.com", 993, "username", "password");
// Välj mappen Inkorg
imapClient.selectFolder(ImapFolderInfo.IN_BOX);
// Hämta listan med meddelanden
ImapMessageInfoCollection msgCollection = imapClient.listMessages();
for (ImapMessageInfo msgInfo : msgCollection) {
System.out.println(msgInfo.getSubject());
}
Skaffa en gratis API-licens
Du kan prova Aspose.Email för Java utan utvärderingsbegränsningar genom att skaffa en tillfällig licens.
Live-demo
Slutsats
I den här artikeln har du lärt dig hur du ansluter till MS Exchange Server och läser e-postmeddelanden med Java. Dessutom har du sett hur du kommer åt MS Exchange Server med EWS eller IMAP. Du kan utforska mer om Aspose.Email för Java med hjälp av dokumentation. Om du skulle ha några frågor eller funderingar är du välkommen att meddela oss via vårt forum.