无法创建xml解析器进度错误11773

时间:2018-08-01 07:00:23

标签: web-services openedge progress-4gl

当我尝试使用此代码接收Web服务消息时,我还有一个问题

RUN importRequest IN hRequest(INPUT DATASET request, OUTPUT returnCode, OUTPUT returnMessage, OUTPUT DATASET resultDset ).

但是我收到下一封邮件

  

接收Web服务响应时出错:输入流为空。不能   创建XMLParser。(11773)

当我进入Web服务时,创建了注册器。 感谢您的时间和帮助。

我尝试了所有类型的解决方案,但无法解决,请寻求帮助。

2 个答案:

答案 0 :(得分:0)

进度知识库中有许多关于该错误的文章:

Progress Software完全不支持Web服务响应。如果您使用的是11.6,请使用ABL中的新HTTP客户端与Web服务进行通信。

这里有一个示例,展示了如何使用HTTP客户端与SOAP Web服务进行通信:

https://knowledgebase.progress.com/articles/Article/How-to-Http-Client-to-save-attachment-from-SOAP-response

答案 1 :(得分:0)

所有操作完成后,我又收到下一个错误:将OpenEdge.Core.Memptr上的Invalid强制转换为Progress.Json.ObjectModel.Json.Object(12869),我尝试的代码是:

/*JSOOOOOOOOOOOOOON*/
assign
cTargetType = "FILE"
cFile = "C:\dset" + cFecha + ".json"
lFormatted = true
cEncoding = ?.
define variable hDataSet as handle.
lReturn = dataset requestDataset:write-json("LONGCHAR", lcJSonData, lFormatted, cEncoding,true,true).
lcJSonData = replace(replace(lcJSonData,"[",""),"]","").
/*stop JSOOOOOOOOOOON*/
message 'hello'
view-as alert-box.
copy-lob from lcJSonMeta to file ("C:\doBJ" + cFecha + ".xml") no-convert.
/*oObject = cast(oParser:Parse(lcJSonData), JsonObject).                               */
/*copy-lob from oObject:GetJsonText() to file ("C:\doBJ" + cFecha + ".xml") no-convert.*/

oEntityNiko = new string(lcJSonMeta).

oRequest = RequestBuilder:Post(httpUrl,oEntityNiko)
                         :AcceptJson()
                         :AddHeader("Accept", "application/xml")
                         :AddHeader("Accept", "text/plain")
                         :AddHeader("Content-Type","application/xml;charset=utf-8")
                         :AddHeader("Connection", "Keep-Alive")
                         :Request.

message 'despues de requestbuilder'
view-as alert-box.

oLib = ClientLibraryBuilder:Build()
                           :AddSslProtocol('TLSv1.2')
                           :AddSslCipher('AES256-SHA256')
                           /*:sslVerifyHost(no)*/
                           :Library.

message 'after olib clientlibrarybuilder'
view-as alert-box.                           
                  
oResponse = ClientBuilder:Build()
                         :UsingLibrary(oLib)
                         :Client
                         :Execute(oRequest).
 
 message 'after of oresponse clientbuilder'
 view-as alert-box.
 
 
message oResponse:StatusCode
view-as alert-box.

message oResponse:StatusReason
view-as alert-box.

oEntity = oResponse:Entity.
oObjectResponse = cast(oEntity, JsonObject).


cNomFichero = 'webserviceNico_' + cFecha + '.json'.
cFichJson = 'C:\' + cNomFichero. 
    
copy-lob from oObjectResponse:GetJsonText() to file (cFichJson) no-convert.