Soap XQuery转换映射错误:{err}FORG0005:只需要一项,得到0项

Soap XQuery转换映射错误:{err}FORG0005:只需要一项,得到0项,soap,mapping,xquery,transformation,osb,Soap,Mapping,Xquery,Transformation,Osb,我在进行XQuery映射时遇到问题。错误内容如下: 分析XML时出错:{err}FORG0005:只需要一项,得到0项 这是我收到的回复文件: <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header xmlns:cgi="http://tempuri.org/Servicios/CGI"/> <soap:Body xmlns:xs

我在进行XQuery映射时遇到问题。错误内容如下:

分析XML时出错:{err}FORG0005:只需要一项,得到0项

这是我收到的回复文件:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
  <soapenv:Header xmlns:cgi="http://tempuri.org/Servicios/CGI"/>
  <soap:Body xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <GetConsumosResponse xmlns="http://tempuri.org/Servicios/CGI">
      <GetConsumosResult>
        <diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
          <NewDataSet xmlns="">
            <Consumos diffgr:id="Consumos1" msdata:rowOrder="0">
              ...
            </Consumos>
          ...
          </NewDataSet>
        </diffgr:diffgram>
      </GetConsumosResult>
    </GetConsumosResponse>
  </soap:Body>
</soapenv:Envelope>
XQuery资源:
OSBSettlementProxy/XQuery/NGAblibubleXQRResponse

变量名和绑定:

newDataSet1: $getConsumosResponse/GetConsumosResponse/GetConsumosResult/diffgr:diffgram/NewDataSet

我已经在我的命名空间中定义了
diffgr
,所以我知道这不是问题…

看起来
GetConsumosResponse
GetConsumosResult
在默认命名空间中
http://tempuri.org/Servicios/CGI
。但是,您的路径表达式似乎没有使用此命名空间。您可以尝试添加新的命名空间定义
“cgi”=”http://tempuri.org/Servicios/CGI“
然后将路径更改为:

$getConsumosResponse/cgi:GetConsumosResponse/cgi:GetConsumosResult/diffgr:diffgram/NewDataSet

它看起来像
GetConsumosResponse
GetConsumosResult
在默认命名空间中
http://tempuri.org/Servicios/CGI
。但是,您的路径表达式似乎没有使用此命名空间。您可以尝试添加新的命名空间定义
“cgi”=”http://tempuri.org/Servicios/CGI“
然后将路径更改为:

$getConsumosResponse/cgi:GetConsumosResponse/cgi:GetConsumosResult/diffgr:diffgram/NewDataSet

它看起来像
GetConsumosResponse
GetConsumosResult
在默认命名空间中
http://tempuri.org/Servicios/CGI
。但是,您的路径表达式似乎没有使用此命名空间。您可以尝试添加新的命名空间定义
“cgi”=”http://tempuri.org/Servicios/CGI“
然后将路径更改为:

$getConsumosResponse/cgi:GetConsumosResponse/cgi:GetConsumosResult/diffgr:diffgram/NewDataSet

它看起来像
GetConsumosResponse
GetConsumosResult
在默认命名空间中
http://tempuri.org/Servicios/CGI
。但是,您的路径表达式似乎没有使用此命名空间。您可以尝试添加新的命名空间定义
“cgi”=”http://tempuri.org/Servicios/CGI“
然后将路径更改为:

$getConsumosResponse/cgi:GetConsumosResponse/cgi:GetConsumosResult/diffgr:diffgram/NewDataSet