edu-스토리

EWS 자바 API를 사용해 본 후기.




안녕하세요.



이번에는 EWS 자바 API에 대해 쓰고 싶습니다.

EWS 자바 API는 Exchange Server의 기능을 사용하기위한 자바 용 API를 말합니다.


조금 사용할 기회가 있었기 때문에 비망록으로 작성 일으 킵니다. 


1. 준비 편

먼저 Exchange Server에 액세스하기위한 준비를합니다.

코드는 아래와 같이됩니다.


EWS 준비

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 취득 편지 동참합니다. 코드는 아래와 같이됩니다.




EWS 취득

1

2

FindItemsResults<item> findItemsResults = exchangeService.findItems(WellKnownFolderName.Inbox, new ItemView(Integer.MAX_VALUE));

ArrayList<Item> items = findItemsResults.getItems();

메일을 검색하고 싶기 때문에, Inbox 폴더의 Item을 취득했습니다. 

이번 설명되지 않지만 SearchFilter를 이용하여 검색 조건을 지정할 수도 있습니다. 


2.2 내용의 확인 받은 메일의 내용을 확인합니다. 코드는 아래와 같이됩니다.




EWS 확인


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 클래스에 캐스트 해 내용을 확인합니다. 

보낸 날짜 · 보낸 사람 주소 제목을 표시했습니다. 


이번은 여기까지합니다. 

참고로 폴더를 변경하여 이메일 이외에도 다양한 정보가 잡 힙니다. 



학원을 다니려고 알아보시는 분들은 채팅창 통해서 질문해주시면 됩니다.^^


그럼 다음 이시간에 또 봐요.