Microsoft Exchange Serverは、複数のユーザーがアクセスできる共有メールボックスの機能を提供します。ユーザーは、電子メールの送受信、カレンダーやタスクの作成、およびその他のアクティビティを実行できます。プログラムでMSExchangeServerを操作しているときに、共有メールボックスから電子メールにアクセスする必要がある場合があります。したがって、この記事では、Javaを使用してMSExchangeServer上の共有メールボックスから電子メールメッセージを読み取る方法を学習します。
ExchangeServer上の共有メールボックスから電子メールを読み取るJavaAPI
MS Exchange Serverの共有メールボックスからメッセージを読み取るには、Aspose.Email for Javaを使用します。 APIは、Javaアプリケーション内から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.2</version>
<classifier>jdk16</classifier>
</dependency>
JavaのExchangeServer上の共有メールボックスから電子メールを読み取る
以下は、JavaのEWSクライアントを使用してMSExchangeServerの共有メールボックスから電子メールを読み取る手順です。
- ネットワーククレデンシャルを設定します。
- Exchange Serverに接続し、EWSクライアントのインスタンスをIEWSClientオブジェクトに取得します。
- IEWSClient.listItems(String, String)メソッドを使用して、目的のフォルダーから配列に電子メールを取得します。
- 配列内の各電子メールをループして、次の手順を実行します。
- IEWSClient.fetchItem(String)メソッドを使用して、各メッセージをMapiMessageオブジェクトにフェッチします。
- MapiMessage.getSubject()メソッドなどのMapiMessageオブジェクトを使用して、メッセージの詳細を読み取ります。
次のコードサンプルは、JavaのMSExchangeServer上の共有メールボックスから電子メールメッセージを読み取る方法を示しています。
final String mailboxUri = "<HOST>";
final String domain = "";
final String username = "<EMAIL ADDRESS>";
final String password = "<PASSWORD>";
final String sharedEmail = "<SHARED EMAIL ADDRESS>";
// ネットワーククレデンシャルを設定する
NetworkCredential credentials = new NetworkCredential(username, password, domain);
// EWSクライアントを取得する
IEWSClient client = EWSClient.getEWSClient(mailboxUri, credentials);
// 受信トレイからアイテムを取得する
String[] items = client.listItems(sharedEmail, "Inbox");
// 各メールメッセージを読む
for (String item : items) {
MapiMessage msg = client.fetchItem(item);
System.out.println("Subject:" + msg.getSubject());
System.out.println("Subject:" + msg.getBody());
}
client.dispose();
無料のAPIライセンスを取得する
無料の一時ライセンスを取得して、評価の制限なしにAspose.EmailforJavaを使用できます。
結論
この記事では、JavaのMicrosoftExchangeServer上の共有メールボックスから電子メールメッセージを読み取る方法を学習しました。 APIをインストールし、提供されているコードサンプルを統合するだけで、Javaアプリケーション内から共有メールボックスにアクセスできます。さらに、ドキュメントからAspose.EmailforJavaの詳細を学ぶことができます。また、ご不明な点がございましたら、フォーラムからお問い合わせください。