Di chuyển Email vào một thư mục trên Microsoft Exchange Server trong Java

Aspose.Email dành cho Java cho phép bạn làm việc với các dịch vụ của Microsoft Exchange Server như email, quản lý liên hệ, lập lịch, v.v. Trong bài đăng trước, bạn đã thấy cách đọc email từ MS Exchange Server theo chương trình từ bên trong các ứng dụng Java của bạn. Tuy nhiên, trong một số trường hợp nhất định, bạn có thể phải di chuyển email từ thư mục này sang thư mục khác trên Exchange Server. Trong bài viết này, bạn sẽ học cách di chuyển email vào một thư mục cụ thể trên MS Exchange Server trong java.

API Java để di chuyển email trên Microsoft Exchange Server

Aspose.Email dành cho Java là một API email mạnh mẽ để hoạt động với MS Exchange Server mà không cần viết mã phức tạp. Trong bài viết này, chúng tôi sẽ sử dụng API này để di chuyển email đến một thư mục cụ thể của hộp thư trong MS Exchange Server. Bạn có thể tải xuống API hoặc cài đặt nó bằng cách sử dụng các cấu hình Maven sau.

Kho:

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

Sự phụ thuộc:

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

Di chuyển Email vào một Thư mục trên Máy chủ MS Exchange trong Java

Sau đây là các bước để di chuyển email vào một thư mục cụ thể trên MS Exchange Server trong Java.

Mẫu mã sau đây cho thấy cách di chuyển một email vào một thư mục trên MS Exchange Server trong Java.

try {
	// Tạo phiên bản của lớp EWSClient bằng cách cung cấp thông tin xác thực
	IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser",
			"pwd", "domain");

	// Phương thức Call ListMessages để liệt kê thông tin tin nhắn từ Inbox
	ExchangeMessageInfoCollection msgCollection = client.listMessages(client.getMailboxInfo().getInboxUri());

	// Lặp lại bộ sưu tập để nhận URI thư
	for (ExchangeMessageInfo msgInfo : msgCollection) {
		if (msgInfo.getFrom().getAddress().contains("jhon.vick")) {
			String strMessageURI = msgInfo.getUniqueUri();

			// Sao chép vào thư mục cụ thể
			String newMessageUri = client.copyItem(strMessageURI, client.getMailboxInfo().getOutboxUri());
		}
	}
} catch (java.lang.RuntimeException ex) {
	System.out.println(ex.getMessage());
}

Di chuyển Email Mới vào một Thư mục trên Máy chủ MS Exchange

Bạn cũng có thể di chuyển email mới tạo vào một thư mục cụ thể trong MS Exchange Server. Sau đây là các bước để thực hiện thao tác này.

Mẫu mã sau đây cho thấy cách di chuyển một thư email mới vào một thư mục trong MS Exchange Server.

try {
	// Tạo phiên bản của lớp EWSClient bằng cách cung cấp thông tin xác thực
	IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser",
			"pwd", "domain");

	// Tạo một tin nhắn mới
	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");

	// Nhận URI
	String messageUri = client.appendMessage(message);

	// Di chuyển đến thư mục
	String newMessageUri = client.copyItem(messageUri, client.getMailboxInfo().getDeletedItemsUri());
} catch (java.lang.RuntimeException ex) {
	System.out.println(ex.getMessage());
}

Nhận giấy phép API miễn phí

Bạn có thể nhận giấy phép tạm thời miễn phí để sử dụng Aspose.Email dành cho Java mà không có giới hạn đánh giá.

Sự kết luận

Trong bài viết này, bạn đã học cách di chuyển email đến một thư mục cụ thể trong Microsoft Exchange Server bằng Java. Hơn nữa, bạn đã thấy cách di chuyển một email mới được tạo vào một thư mục cụ thể trong Exchange Server. Ngoài ra, bạn có thể khám phá tài liệu để đọc thêm về Aspose.Email for Java. Ngoài ra, bạn có thể đặt câu hỏi của mình qua diễn đàn của chúng tôi.

Xem thêm