如何使用plsql oracle apex解析soap响应

时间:2017-04-06 14:20:19

标签: xml oracle soap plsql

我试图解析xml响应,但没有找到数据。下面给出了代码。有人请帮帮我

{{1}}

1 个答案:

答案 0 :(得分:0)

您只需要为已编写的代码添加默认声明。

WITH DATA AS (SELECT '<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetDeliveryReportResponse xmlns="MyTest WebService">
         <GetDeliveryReportResult>919748021520500 -3-4/6/2017 1:18:49 PM,919400159619-3-4/6/2017 1:19:20 PM,||rc_smsSND_NUMB-11-4/6/2017 6:10:00 PM,||rc_smsSND_NUMB-11-4/6/2017 6:11:00 PM</GetDeliveryReportResult>
      </GetDeliveryReportResponse>
   </soap:Body>
</soap:Envelope>' xml FROM dual)

SELECT did
    FROM data,
          xmltable(XMLNamespaces (default 'MyTest WebService',
          'http://schemas.xmlsoap.org/soap/envelope/'
                                   AS "soap"),
                   '/soap:Envelope/soap:Body/GetDeliveryReportResponse'
                   PASSING XMLTYPE(xml)
                   COLUMNS
                     did Varchar2(1000) PATH 'GetDeliveryReportResult');