API Java EWS получить вложение

У меня есть проблема с получением вложения с помощью ews java API 1.3 SNAPSHOT, я хочу получить вложение в своем электронном письме, вот мой код:

try {
    ExchangeService service;
    service.setUrl(new URI("https://" + myserver + "/ews/Exchange.asmx"));
    ExchangeCredentials credentials = new WebCredentials(username, password);
    service.setCredentials(credentials);
    ItemView view = new ItemView(Integer.MAX_VALUE);
    view.getOrderBy().add(ItemSchema.DateTimeReceived, SortDirection.Ascending);
    Folder folder = Folder.bind(service, WellKnownFolderName.Inbox);
    FindItemsResults<Item> results = service.findItems(folder.getId(),view);
    service.loadPropertiesForItems(results, new PropertySet(BasePropertySet.FirstClassProperties, EmailMessageSchema.Attachments));

        for (Item item : results) {
        Item itm = Item.bind(service, item.getId(), new PropertySet(BasePropertySet.FirstClassProperties, EmailMessageSchema.Attachments));
        EmailMessage emailMessage = EmailMessage.bind(service, itm.getId(), new PropertySet(BasePropertySet.FirstClassProperties, EmailMessageSchema.Attachments));
        if (emailMessage.getHasAttachments()) {
                for (Attachment attachment : emailMessage.getAttachments()) {
                    String FileExtension = getFileExtension(attachment.getName());
                    File TempFile = File.createTempFile(attachment.getName(), FileExtension);
                    attachment.load(TempFile.getAbsolutePath());
                }
            }
        }
} catch (Exception e) {
    logger.error("Error ", e.getMessage());
}

Моя проблема в том, что он может получить другое электронное письмо без вложения и всегда пропускать электронное письмо с вложением, пример такой: в моем почтовом ящике у меня есть этот список адресов электронной почты.

И когда я запускаю свой код, он всегда получает электронное письмо без вложений, например:

и пропустите другое электронное письмо с вложением, я понятия не имею, как это может произойти. Может кто-то мне помочь, пожалуйста?


person afany.firdaus    schedule 11.02.2015    source источник
comment
какой java API вы используете? связь?   -  person Mahesha999    schedule 12.02.2015
comment
я использую ews java api 1.3 SNAPSHOT, я загружаю из репозитория maven и здесь моя система pom.xml ‹dependency› ‹groupId›com.microsoft.office‹/groupId› ‹artifactId›ews-java-api‹/artifactId› ‹scope› ‹/область› ‹версия›1.3-SNAPSHOT‹/версия› ‹/зависимость›   -  person afany.firdaus    schedule 13.02.2015
comment
выглядит правильно, возможно, поможет захват пакетов SOAP с помощью TraceListener. Вот несколько ссылок: 1, 2, 3 Также я предлагаю вам чтобы опубликовать вопрос на форуме разработчиков Exchange для точного ответа. Это помогло мне раньше, когда я сталкивался с подобными странными вещами.   -  person Mahesha999    schedule 13.02.2015


Ответы (1)


person    schedule
comment
Так что ты действительно даешь здесь минимум, @Lucky, это, безусловно, было полезно, но я провел последние несколько часов, пытаясь расшифровать то, что ты упустил! Например, что является подписью: appendItemBody() или какой тип свойств или appendedBody. Я не могу добавить свои догадки к этим здесь, пока не буду более уверен, но был бы признателен за ваш дальнейший вклад? Все равно спасибо за то, что завели меня так далеко! - person Scala Enthusiast; 28.03.2018