错误构建上下文项的源.org.xml.sax.SAXParseException;lineNumber: 1;colum



我正在尝试从响应中指定的utf-16编码返回的invokeHTTP方法解析XML。我在下面试过了,但我仍然无法通过这个错误

select request.* from  (EXEC model.invokeHttp(action => 'POST', endpoint => 'url' ,contentType => 'application/x-www-form-urlencoded;charset=utf-8',headers => jsonObject('application/x-www-form-urlencoded;charset=utf-8' as "Content-Type",'utf-8' as "Accept-Charset",jsonArray('gzip', 'deflate') as "Accept-Encoding",'bearer token' as "App-Authorization"),request => 'payload')) AS ws,
XMLTABLE(XMLNAMESPACES(DEFAULT 'url'),'/path' PASSING XMLPARSE(DOCUMENT TO_CHARS(ws.result,'utf-8') WELLFORMED)  columns
Name string PATH 'FirstName'
) AS request

我已经尝试在VDB中为翻译器指定编码,仍然相同

<translator name="rest" type="ws">
<property name="DefaultBinding" value="HTTP"/>
<property name="DefaultServiceMode" value="MESSAGE"/>
<property name="encoding" value="UTF-16"/>
</translator>

反应:

<?xml version="1.0" encoding="UTF-16" standalone="yes"?>

首先确保您正在获得预期的响应,要么有日志记录,您可以打开请求/响应日志http://teiid.github.io/teiid-documents/master/content/admin/Web_Service_Data_Sources.html,要么只是执行等效的:

TO_CHARS (ws.result"utf - 8")

查看响应。

我把"Accept"在http头文件中转换为'text/xml;charset=utf-16',然后转换为TO_CHARS(ws.result,'UTF-16')

相关内容

  • 没有找到相关文章

最新更新