Aspose.Email for Java låter dig arbeta med Microsoft Exchange Servers tjänster såsom e-post, kontakthantering, kalender, etc. I ett föregående inlägg har du sett hur du läser e-postmeddelanden från MS Exchange Server programmatiskt från dina Java-applikationer. I vissa fall kan du dock behöva flytta e-postmeddelanden från en mapp till en annan på Exchange Server. I den här artikeln kommer du att lära dig hur du flyttar e-postmeddelanden till en viss mapp på MS Exchange Server i java.
- Java API för att flytta e-postmeddelanden på Microsoft Exchange Server
- Flytta befintlig e-post till en mapp på MS Exchange Server
- Flytta ny e-post till en mapp på MS Exchange Server
Java API för att flytta e-postmeddelanden på Microsoft Exchange Server
Aspose.Email for Java är ett kraftfullt e-API för att arbeta med MS Exchange Server utan att skriva komplex kod. I den här artikeln kommer vi att använda detta API för att flytta e-postmeddelanden till en specifik mapp i postlådan i MS Exchange Server. Du kan antingen ladda ner API:t eller installera det med hjälp av följande Maven-konfigurationer.
Förvar:
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>http://repository.aspose.com/repo/</url>
</repository>
Beroende:
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-email</artifactId>
<version>22.2</version>
<classifier>jdk16</classifier>
</dependency>
Flytta e-post till en mapp på MS Exchange Server i Java
Följande är stegen för att flytta e-postmeddelanden till en viss mapp på MS Exchange Server i Java.
- Initiera först objektet IEWSClient med användarnamn, lösenord, domän och URI.
- Hämta sedan en lista över e-postmeddelanden i ett ExchangeMessageInfoCollection-objekt med metoden IEWSClient.listMessages(IEWSClient.getMailboxInfo().getInboxUri()).
- Efter det går du igenom varje ExchangeMessageInfo-meddelande och filtrerar de nödvändiga.
- Hämta sedan URI:n för e-postmeddelandet som ska flyttas med metoden ExchangeMessageInfo.getUniqueUri().
- Flytta slutligen e-postmeddelandet med metoden IEWSClient.copyItem(String URI, IEWSClient.getMailboxInfo().getOutboxUri()).
Följande kodexempel visar hur man flyttar ett e-postmeddelande till en mapp på MS Exchange Server i Java.
try {
// Skapa en instans av klassen EWSClient 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) {
if (msgInfo.getFrom().getAddress().contains("jhon.vick")) {
String strMessageURI = msgInfo.getUniqueUri();
// Kopiera till en viss mapp
String newMessageUri = client.copyItem(strMessageURI, client.getMailboxInfo().getOutboxUri());
}
}
} catch (java.lang.RuntimeException ex) {
System.out.println(ex.getMessage());
}
Flytta ny e-post till en mapp på MS Exchange Server
Du kan också flytta ett nyskapat e-postmeddelande till en viss mapp i MS Exchange Server. Följande är stegen för att utföra denna operation.
- Initiera först objektet IEWSClient med användarnamn, lösenord, domän och URI.
- Skapa sedan ett nytt meddelande med klassen MailMessage.
- Efter det, få e-postmeddelandets URI returnerad med metoden IEWSClient.appendMessage(MailMessage).
- Flytta slutligen e-postmeddelandet med metoden IEWSClient.copyItem(String URI, IEWSClient.getMailboxInfo().getOutboxUri()).
Följande kodexempel visar hur du flyttar ett nytt e-postmeddelande till en mapp i MS Exchange Server.
try {
// Skapa en instans av klassen EWSClient genom att ge referenser
IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser",
"pwd", "domain");
// Skapa ett nytt meddelande
MailMessage message = new MailMessage("from@domain.com", "to@domain.com",
"EMAILNET-34997 - " + UUID.randomUUID().toString(),
"EMAILNET-34997 Exchange: Copy a message and get reference to the new Copy item");
// Skaffa URI
String messageUri = client.appendMessage(message);
// Flytta till mapp
String newMessageUri = client.copyItem(messageUri, client.getMailboxInfo().getDeletedItemsUri());
} catch (java.lang.RuntimeException ex) {
System.out.println(ex.getMessage());
}
Skaffa en gratis API-licens
Du kan få en gratis temporär licens för att använda Aspose.Email för Java utan utvärderingsbegränsningar.
Slutsats
I den här artikeln har du lärt dig hur du flyttar e-postmeddelanden till en viss mapp i Microsoft Exchange Server med Java. Dessutom har du sett hur du flyttar ett nyskapat e-postmeddelande till en specifik mapp i Exchange Server. Dessutom kan du utforska dokumentationen för att läsa mer om Aspose.Email för Java. Du kan också ställa dina frågor via vårt forum.