在 java 中解析来自 Amazon SQS 的 XML 通知?

Parse XML Notification from Amazon SQS in java?

上下文:

我收到从 MWSSQS 的通知。我想收听队列和处理消息以检索信息。

通知示例:

<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?所有解析器都希望获得顶部带有 link 的 xml 标识符的主要问题。我试验了 JAXBDOMParser。我也试过研究 examples from Github

我找到了可以立即使用我的文档结构的库 Jcabi-xml