Разобрать XML-уведомление от Amazon SQS в Java? - PullRequest
0 голосов
/ 05 марта 2019

Контекст:

Я получаю уведомления от MWS в SQS.Я хочу прослушивать очередь и обрабатывать сообщения для получения информации.

Пример уведомления:

<Notification>
<NotificationMetaData>
    <NotificationType>ReportProcessingFinishedNotification</NotificationType>
    <PayloadVersion>1.0</PayloadVersion>
    <UniqueId>rwf00-dvSDC-DFAB-sd3frw</UniqueId>
    <PublishTime>2019-03-05T12:55:08.965Z</PublishTime>
    <SellerId>111111</SellerId>
</NotificationMetaData>
<NotificationPayload>
    <ReportProcessingFinishedNotification>
        <SellerId>111111</SellerId>
        <ReportRequestId>11111111111</ReportRequestId>

        <ReportType>_GET_FBA_FULFILLMENT_REMOVAL_ORDER_DETAIL_DATA_</ReportType>
        <ReportProcessingStatus>DONE_NO_DATA</ReportProcessingStatus>
    </ReportProcessingFinishedNotification>
</NotificationPayload>
</Notification>

Вопрос:

В данный моментЯ слушаю очередь следующим образом:

@SqsListener(value = "notification-test-queue", deletionPolicy = SqsMessageDeletionPolicy.ON_SUCCESS)
public void processSubscription(String xmlNotification) { /*TODO: Some action in here*/}

Как правильно разобрать xmlNotification?Основная проблема в том, что все парсеры ожидают получить идентификатор xml со ссылкой сверху.Я экспериментировал с JAXB и DOMParser.Я также попытался изучить примеры из Github

1 Ответ

0 голосов
/ 06 марта 2019

Я нашел библиотеку, которая работала со структурой моего документа из коробки Jcabi-xml .

...