用 Java 在 MS Exchange Server 上创建、更新或删除任务

待办事项列表用于跟踪要执行的活动。人们在纸上、文本编辑器、电子表格等上创建此类列表。Microsoft Exchange Server 还提供了创建和管理由任务组成的待办事项列表的功能。为了以编程方式处理这些任务,本文展示了如何使用 Java 在 MS Exchange Server 上添加、更新或删除任务。

用于管理 MS Exchange Server 上的任务的 Java API

Aspose.Email for Java 是一个电子邮件处理 API,用于创建和发送电子邮件以及实现电子邮件客户端应用程序。此外,它还允许您无缝地使用 MS Exchange Server。我们将使用此 API 在 MS Exchange Server 上创建和操作任务。您可以 下载 API 或使用以下 Maven 配置安装它。

存储库:

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

依赖:

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

用 Java 在 MS Exchange Server 上创建任务

以下是使用 Java 在 MS Exchange Server 上创建任务的步骤。

以下代码示例显示了如何使用 Java 在 MS Exchange Server 上创建任务。

// 通过提供凭据创建 EWSClient 类的实例
IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// 创建 Exchange 任务对象
ExchangeTask task = new ExchangeTask();

// 设置任务主题和状态(以及其他属性)
task.setSubject("New-Test");
task.setStatus(ExchangeTaskStatus.InProgress);

// 创建任务
client.createTask(client.getMailboxInfo().getTasksUri(), task);

用 Java 更新 MS Exchange Server 上的任务

您还可以使用 Java 以编程方式访问和更新 MS Exchange Server 上的现有任务。以下是执行此操作的步骤。

以下代码示例显示了如何在 Java 中更新 MS Exchange Server 上的任务。

// 通过提供凭据创建 ExchangeClient 类的实例
IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// 从 Exchange 获取所有任务信息集合
ExchangeMessageInfoCollection tasks = client.listMessages(client.getMailboxInfo().getTasksUri());

// 解析列表中的所有任务信息对象
for (ExchangeMessageInfo info : (Iterable<ExchangeMessageInfo>) tasks) {
    // 使用当前任务信息从 Exchange 获取任务
    ExchangeTask task = client.fetchTask(info.getUniqueUri());

    // 更新任务状态
    task.setStatus(ExchangeTaskStatus.NotStarted);

    // 设置任务的截止日期
    SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
    task.setDueDate(sdf.parse("26/02/2013 00:00:00"));

    // 设置任务的优先级
    task.setPriority(MailPriority.Low.getValue());

    // Exchange 上的更新任务
    client.updateTask(task);
}

用 Java 删除 MS Exchange Server 上的任务

以下是在 Java 中删除 MS Exchange Server 上的任务的步骤。

以下代码示例显示了如何在 Java 中从 MS Exchange Server 中删除任务。

// 通过提供凭据创建 ExchangeClient 类的实例
IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// 从 Exchange 获取所有任务的信息集合
ExchangeMessageInfoCollection tasks = client.listMessages(client.getMailboxInfo().getTasksUri());

// 解析列表中的所有任务信息对象
for (ExchangeMessageInfo info : (Iterable<ExchangeMessageInfo>) tasks) {
    // 使用当前任务信息从 Exchange 获取任务
    ExchangeTask task = client.fetchTask(info.getUniqueUri());

    // 检查当前任务是否满足搜索条件
    if (task.getSubject().equals("test")) {
        // 从 Exchange 删除任务
        client.deleteItem(task.getUniqueUri(), DeletionOptions.getDeletePermanently());
    }
}

获取免费 API 许可证

您可以获得 免费的临时许可证 使用 Aspose.Email for Java,没有评估限制。

结论

在本文中,您学习了如何在 Microsoft Exchange Server 上管理任务。特别是,您已经了解了如何使用 Java 以编程方式在 MS Exchange Server 上添加、更新或删除任务。此外,您可以浏览 文档 以阅读有关 Aspose.Email for Java 的更多信息。此外,您可以通过我们的 论坛 提问。

也可以看看