Datapower-转换查询不会将JSON转换为JSONX

时间:2018-10-02 01:29:57

标签: ibm-datapower jsonx

我有一个非常简单的用例,以前已经使用过。但是在这种新的mpgw中,流量是

打开URL进入API并获取json响应并在发送给客户端之前处理该响应,这是行不通的。

我在xslt中尝试了以下内容

  <xsl:variable name="Response">
     <dp:url-open target="{$routing_URL}" response="responsecode-binary" http-method="get" ssl-proxy="client:mpgw_Client_SSL_Profile" timeout="'10'">
     </dp:url-open>
   </xsl:variable>

 <!-- Decoding the binary node so that it can be further used in the processing rules -->
   <xsl:variable name="json">
    <xsl:copy-of select="dp:decode(dp:binary-encode($Response/result/binary/node()), 'base-64' )" /> 
   </xsl:variable>

   <dp:set-variable name="'var://context/service_session/json'" value="string($json)" />
   <xsl:value-of select="$json"/>

我可以看到上下文变量正在获取json数据。但是当我在此转换操作之后使用转换查询参数时,它失败并显示以下错误:

Convert HTTP produced invalid XML: Incomplete markup or missing 
document element at offset 39 of ...

我还尝试在转换的输出和下一个转换的输入中使用上下文__JSONASJSONX,但是那里的数据也没有转换为JSONX。

我读过其他论坛,该错误意味着数据为空,但我可以在上下文变量中看到数据。

您知道这里可能出什么问题吗?

0 个答案:

没有答案