JavaのMSExchangeServerでタスクを作成、更新、または削除する

To Doリストは、実行するアクティビティを追跡するために使用されます。人々はそのようなリストを紙、テキストエディタ、スプレッドシートなどで作成します。Microsoft Exchange Serverは、タスクで構成されるToDoリストを作成および管理する機能も提供します。これらのタスクをプログラムで操作するために、この記事では、JavaのMS Exchange Serverでタスクを追加、更新、または削除する方法を示します。

MSExchangeServerでタスクを管理するためのJavaAPI

Aspose.Email for Javaは、電子メールの作成と送信、および電子メールクライアントアプリケーションの実装に使用される電子メール処理APIです。さらに、MSExchangeServerをシームレスに操作できます。このAPIを使用して、MSExchangeServerでタスクを作成および操作します。 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でMSExchangeServerにタスクを作成する

以下は、JavaのMSExchangeServerでタスクを作成する手順です。

  • まず、Exchange Serverに接続し、EWSクライアントのインスタンスをIEWSClientオブジェクトに取得します。
  • 次に、ExchangeTaskクラスのインスタンスを作成します。
  • 件名、ステータスなどのタスクのプロパティを設定します。
  • 最後に、IEWSClient.createTask(String, ExchangeTask)メソッドを使用してタスクを作成します。

次のコードサンプルは、Javaを使用してMSExchangeServerでタスクを作成する方法を示しています。

// 資格情報を指定して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でのMSExchangeServerの更新タスク

Javaを使用して、プログラムでMSExchangeServer上の既存のタスクにアクセスして更新することもできます。この操作を実行する手順は次のとおりです。

次のコードサンプルは、JavaのMSExchangeServerでタスクを更新する方法を示しています。

// 資格情報を指定して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でMSExchangeServerのタスクを削除する

以下は、JavaでMSExchangeServer上のタスクを削除する手順です。

次のコードサンプルは、JavaでMSExchangeServerからタスクを削除する方法を示しています。

// 資格情報を指定して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.EmailforJavaを使用できます。

結論

この記事では、MicrosoftExchangeServerでタスクを管理する方法を学習しました。特に、JavaでプログラムによってMS Exchange Serverのタスクを追加、更新、または削除する方法を見てきました。また、ドキュメントを調べて、Aspose.EmailforJavaの詳細を読むことができます。また、フォーラムから質問することもできます。

関連項目