Aspose.Email for Java ermöglicht es Ihnen, mit den Diensten von Microsoft Exchange Server wie E-Mail, Kontaktverwaltung, Kalender usw. zu arbeiten. In einem vorherigen Post haben Sie gesehen wie Sie E-Mails von MS Exchange Server programmgesteuert aus Ihren Java-Anwendungen lesen. In bestimmten Fällen müssen Sie jedoch möglicherweise E-Mails auf Exchange Server von einem Ordner in einen anderen verschieben. In diesem Artikel erfahren Sie, wie Sie E-Mails in Java in einen bestimmten Ordner auf MS Exchange Server verschieben.
- Java-API zum Verschieben von E-Mails auf Microsoft Exchange Server
- Verschieben Sie vorhandene E-Mails in einen Ordner auf dem MS Exchange Server
- Neue E-Mail in einen Ordner auf MS Exchange Server verschieben
Java-API zum Verschieben von E-Mails auf Microsoft Exchange Server
Aspose.Email for Java ist eine leistungsstarke E-Mail-API für die Arbeit mit MS Exchange Server, ohne komplexen Code schreiben zu müssen. In diesem Artikel verwenden wir diese API, um E-Mails in einen bestimmten Ordner des Postfachs in MS Exchange Server zu verschieben. Sie können die API entweder herunterladen oder sie mit den folgenden Maven-Konfigurationen installieren.
Repository:
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>http://repository.aspose.com/repo/</url>
</repository>
Abhängigkeit:
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-email</artifactId>
<version>22.2</version>
<classifier>jdk16</classifier>
</dependency>
Verschieben Sie E-Mails in einen Ordner auf MS Exchange Server in Java
Im Folgenden sind die Schritte zum Verschieben von E-Mails in einen bestimmten Ordner auf MS Exchange Server in Java aufgeführt.
- Initialisieren Sie zunächst das Objekt IEWSClient mit Benutzername, Kennwort, Domäne und URI.
- Rufen Sie dann die Liste der E-Mail-Nachrichten in einem ExchangeMessageInfoCollection-Objekt mithilfe der Methode IEWSClient.listMessages(IEWSClient.getMailboxInfo().getInboxUri()) ab.
- Durchlaufen Sie danach jede ExchangeMessageInfo-Nachricht und filtern Sie die erforderliche(n) Nachricht(en).
- Rufen Sie dann den URI der zu verschiebenden E-Mail-Nachricht mit der Methode ExchangeMessageInfo.getUniqueUri() ab.
- Verschieben Sie schließlich die E-Mail-Nachricht mit der Methode IEWSClient.copyItem(String URI, IEWSClient.getMailboxInfo().getOutboxUri()).
Das folgende Codebeispiel zeigt, wie Sie eine E-Mail in Java in einen Ordner auf MS Exchange Server verschieben.
try {
// Erstellen Sie eine Instanz der EWSClient-Klasse, indem Sie Anmeldeinformationen angeben
IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser",
"pwd", "domain");
// Rufen Sie die ListMessages-Methode auf, um Nachrichteninformationen aus dem Posteingang aufzulisten
ExchangeMessageInfoCollection msgCollection = client.listMessages(client.getMailboxInfo().getInboxUri());
// Durchlaufen Sie die Sammlung, um den Nachrichten-URI abzurufen
for (ExchangeMessageInfo msgInfo : msgCollection) {
if (msgInfo.getFrom().getAddress().contains("jhon.vick")) {
String strMessageURI = msgInfo.getUniqueUri();
// In einen bestimmten Ordner kopieren
String newMessageUri = client.copyItem(strMessageURI, client.getMailboxInfo().getOutboxUri());
}
}
} catch (java.lang.RuntimeException ex) {
System.out.println(ex.getMessage());
}
Neue E-Mail in einen Ordner auf MS Exchange Server verschieben
Sie können eine neu erstellte E-Mail auch in einen bestimmten Ordner in MS Exchange Server verschieben. Im Folgenden sind die Schritte zum Ausführen dieses Vorgangs aufgeführt.
- Initialisieren Sie zunächst das Objekt IEWSClient mit Benutzername, Kennwort, Domäne und URI.
- Erstellen Sie dann eine neue Nachricht mit der Klasse MailMessage.
- Rufen Sie danach den URI der E-Mail-Nachricht ab, der von der Methode IEWSClient.appendMessage(MailMessage) zurückgegeben wird.
- Verschieben Sie schließlich die E-Mail-Nachricht mit der Methode IEWSClient.copyItem(String URI, IEWSClient.getMailboxInfo().getOutboxUri()).
Das folgende Codebeispiel zeigt, wie Sie eine neue E-Mail-Nachricht in einen Ordner in MS Exchange Server verschieben.
try {
// Erstellen Sie eine Instanz der EWSClient-Klasse, indem Sie Anmeldeinformationen angeben
IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser",
"pwd", "domain");
// Erstellen Sie eine neue Nachricht
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");
// URI erhalten
String messageUri = client.appendMessage(message);
// In den Ordner verschieben
String newMessageUri = client.copyItem(messageUri, client.getMailboxInfo().getDeletedItemsUri());
} catch (java.lang.RuntimeException ex) {
System.out.println(ex.getMessage());
}
Holen Sie sich eine kostenlose API-Lizenz
Sie können eine kostenlose temporäre Lizenz erhalten, um Aspose.Email für Java ohne Evaluierungseinschränkungen zu verwenden.
Fazit
In diesem Artikel haben Sie gelernt, wie Sie E-Mails mit Java in einen bestimmten Ordner in Microsoft Exchange Server verschieben. Außerdem haben Sie gesehen, wie Sie eine neu erstellte E-Mail-Nachricht in einen bestimmten Ordner in Exchange Server verschieben. Außerdem können Sie die Dokumentation durchsuchen, um mehr über Aspose.Email für Java zu erfahren. Sie können Ihre Fragen auch über unser Forum stellen.