E-postayı Java'daki Microsoft Exchange Sunucusundaki Bir Klasöre Taşıyın

Aspose.Email for Java, Microsoft Exchange Server’nin e-posta, kişi yönetimi, takvim vb. hizmetleriyle çalışmanıza olanak tanır. Bir önceki gönderide, gördünüz MS Exchange Server’dan gelen e-postaları Java uygulamalarınızdan programlı olarak nasıl okuyacağınızı öğrenin. Ancak bazı durumlarda Exchange Server’da e-postaları bir klasörden diğerine taşımanız gerekebilir. Bu yazıda, java’da MS Exchange Server’da e-postaları belirli bir klasöre nasıl taşıyacağınızı öğreneceksiniz.

E-postaları Microsoft Exchange Sunucusunda Taşımak için Java API

Aspose.Email for Java, MS Exchange Server ile karmaşık kod yazmadan çalışmak için güçlü bir e-posta API’sidir. Bu yazıda, e-postaları MS Exchange Server’daki posta kutusunun belirli bir klasörüne taşımak için bu API’yi kullanacağız. API’yi indirebilir veya aşağıdaki Maven yapılandırmalarını kullanarak yükleyebilirsiniz.

Depo:

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

Bağımlılık:

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

E-postayı Java’daki MS Exchange Sunucusundaki Bir Klasöre Taşıyın

Aşağıdakiler, e-postaları Java’daki MS Exchange Server’da belirli bir klasöre taşıma adımlarıdır.

Aşağıdaki kod örneği, bir e-postanın Java’daki MS Exchange Server’daki bir klasöre nasıl taşınacağını gösterir.

try {
	// Kimlik bilgilerini vererek EWSClient sınıfının örneğini oluşturun
	IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser",
			"pwd", "domain");

	// Gelen Kutusu'ndaki mesaj bilgilerini listelemek için ListMessages yöntemini çağırın
	ExchangeMessageInfoCollection msgCollection = client.listMessages(client.getMailboxInfo().getInboxUri());

	// İleti URI'sini almak için koleksiyonda döngü yapın
	for (ExchangeMessageInfo msgInfo : msgCollection) {
		if (msgInfo.getFrom().getAddress().contains("jhon.vick")) {
			String strMessageURI = msgInfo.getUniqueUri();

			// Belirli bir klasöre kopyala
			String newMessageUri = client.copyItem(strMessageURI, client.getMailboxInfo().getOutboxUri());
		}
	}
} catch (java.lang.RuntimeException ex) {
	System.out.println(ex.getMessage());
}

Yeni E-postayı MS Exchange Sunucusunda Bir Klasöre Taşıyın

Yeni oluşturulan bir e-postayı MS Exchange Server’da belirli bir klasöre de taşıyabilirsiniz. Bu işlemi gerçekleştirmek için adımlar aşağıdadır.

Aşağıdaki kod örneği, yeni bir e-posta iletisinin MS Exchange Server’daki bir klasöre nasıl taşınacağını gösterir.

try {
	// Kimlik bilgilerini vererek EWSClient sınıfının örneğini oluşturun
	IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser",
			"pwd", "domain");

	// Yeni bir mesaj oluştur
	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'yi al
	String messageUri = client.appendMessage(message);

	// Klasöre taşı
	String newMessageUri = client.copyItem(messageUri, client.getMailboxInfo().getDeletedItemsUri());
} catch (java.lang.RuntimeException ex) {
	System.out.println(ex.getMessage());
}

Ücretsiz API Lisansı Alın

Aspose.Email for Java’yı değerlendirme sınırlamaları olmaksızın kullanmak için ücretsiz geçici lisans alabilirsiniz.

Çözüm

Bu makalede, Java kullanarak e-postaları Microsoft Exchange Server’da belirli bir klasöre nasıl taşıyacağınızı öğrendiniz. Ayrıca, yeni oluşturulan bir e-posta mesajını Exchange Server’da belirli bir klasöre nasıl taşıyacağınızı gördünüz. Ayrıca Aspose.Email for Java hakkında daha fazlasını okumak için belgeleri inceleyebilirsiniz. Ayrıca sorularınızı forumumuz aracılığıyla da sorabilirsiniz.

Ayrıca bakınız