こんにちは。
パク太郎です。
今回は、EWS Java APIについて書きたいと思います。
EWS Java APIとは、Exchange Serverの機能を使うためのJava用のAPIの事です。
ちょっと使う機会があったので、備忘録的に書き起こします。
1.準備編
まずは、Exchange Serverにアクセスするための準備をします。
ExchangeCredentials credentials = new WebCredentials(userId, password); ExchangeVersion exchangeVersion = ExchangeVersion.Exchange2010_SP2; ExchangeService exchangeService = new ExchangeService(exchangeVersion); exchangeService.setUrl(new URI(https://xxxx/EWS/Exchange.asmx)); exchangeService.setCredentials(credentials);Exhange Serverにアクセスするために、ExchangeServiceクラスのインスタンスを作成しています。
ハイライトされている箇所は適宜変更する必要があります。
2.アクセス編
次に作成したインスタンスを用いて実際にアクセスする方法を見ていきます。
2.1 取得
メールを取得してみます。
コードは下記のようになります。
FindItemsResults<item> findItemsResults = exchangeService.findItems(WellKnownFolderName.Inbox, new ItemView(Integer.MAX_VALUE)); ArrayList<Item> items = findItemsResults.getItems();メールを取得したいので、Inboxフォルダ内のItemを取得しました。
今回は説明しませんが、SearchFilterを用いて検索条件を指定することも出来ます。
2.2 内容の確認
取得したメールの内容を確認します。
コードは下記のようになります。
for(item : items){ item.load(); if(item instanceof EmailMessage){ EmailMessage emailMessage = (EmailMessage)item; System.out.println("送信日時 : " + emailMessage.getSender().getAddress()); System.out.println("送信者アドレス : " + emailMessage.getSender().getAddress()); System.out.println("タイトル : " + emailMessage.getSubject()); } }今回はメールを取得したので、EmailMessageクラスにキャストして内容の確認を行います。
送信日時・送信者アドレス・タイトルを表示しました。
今回はここまでにします。
ちなみにフォルダを変えることでメール以外にも色々情報が取れます。
詳しくはこちら
では~ノシ