Flytta e-post till en mapp på Microsoft Exchange Server i Java

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

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.

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.

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.

Se även