Sposta l'e-mail in una cartella su Microsoft Exchange Server in Java

Aspose.Email per Java ti consente di lavorare con i servizi di Microsoft Exchange Server come e-mail, gestione dei contatti, calendario, ecc. In un post precedente, hai visto come leggere le email da MS Exchange Server in modo programmatico dall’interno delle tue applicazioni Java. Tuttavia, in alcuni casi, potrebbe essere necessario spostare i messaggi di posta elettronica da una cartella all’altra su Exchange Server. In questo articolo imparerai come spostare le email in una cartella particolare su MS Exchange Server in Java.

API Java per spostare le email su Microsoft Exchange Server

Aspose.Email per Java è una potente API di posta elettronica per lavorare con MS Exchange Server senza scrivere codice complesso. In questo articolo, utilizzeremo questa API per spostare le e-mail in una cartella specifica della casella di posta in MS Exchange Server. Puoi scaricare l’API o installarla utilizzando le seguenti configurazioni Maven.

Archivio:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
</repository>

Dipendenza:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-email</artifactId>
    <version>22.2</version>
    <classifier>jdk16</classifier>
</dependency>

Sposta l’e-mail in una cartella su MS Exchange Server in Java

Di seguito sono riportati i passaggi per spostare le e-mail in una cartella particolare su MS Exchange Server in Java.

L’esempio di codice seguente mostra come spostare un messaggio di posta elettronica in una cartella su MS Exchange Server in Java.

try {
	// Crea un'istanza della classe EWSClient fornendo le credenziali
	IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser",
			"pwd", "domain");

	// Chiama il metodo ListMessages per elencare le informazioni sui messaggi dalla Posta in arrivo
	ExchangeMessageInfoCollection msgCollection = client.listMessages(client.getMailboxInfo().getInboxUri());

	// Scorri la raccolta per ottenere l'URI del messaggio
	for (ExchangeMessageInfo msgInfo : msgCollection) {
		if (msgInfo.getFrom().getAddress().contains("jhon.vick")) {
			String strMessageURI = msgInfo.getUniqueUri();

			// Copia in una cartella particolare
			String newMessageUri = client.copyItem(strMessageURI, client.getMailboxInfo().getOutboxUri());
		}
	}
} catch (java.lang.RuntimeException ex) {
	System.out.println(ex.getMessage());
}

Sposta la nuova e-mail in una cartella su MS Exchange Server

Puoi anche spostare un’e-mail appena creata in una cartella particolare in MS Exchange Server. Di seguito sono riportati i passaggi per eseguire questa operazione.

L’esempio di codice seguente mostra come spostare un nuovo messaggio di posta elettronica in una cartella in MS Exchange Server.

try {
	// Crea un'istanza della classe EWSClient fornendo le credenziali
	IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser",
			"pwd", "domain");

	// Crea un nuovo messaggio
	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");

	// Ottieni URI
	String messageUri = client.appendMessage(message);

	// Sposta nella cartella
	String newMessageUri = client.copyItem(messageUri, client.getMailboxInfo().getDeletedItemsUri());
} catch (java.lang.RuntimeException ex) {
	System.out.println(ex.getMessage());
}

Ottieni una licenza API gratuita

Puoi ottenere una licenza temporanea gratuita per utilizzare Aspose.Email per Java senza limitazioni di valutazione.

Conclusione

In questo articolo, hai imparato come spostare i messaggi di posta elettronica in una cartella particolare in Microsoft Exchange Server utilizzando Java. Inoltre, hai visto come spostare un messaggio di posta elettronica appena creato in una cartella specifica in Exchange Server. Inoltre, puoi esplorare la documentazione per saperne di più su Aspose.Email per Java. Inoltre, puoi porre le tue domande tramite il nostro forum.

Guarda anche