Buenas
He configurado los logs del servicio y no deja rastros.
.png)
Realice algunos cambios y configure el servicio con la clase de caracteres JSON
Cuando veo el mensaje en el servicio veo lo siguiente
<HTTPMessage xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:s="http://www.w3.org/2001/XMLSchema">
<Type>GC</Type>
<HTTPHeaders>
<HTTPHeadersItem HTTPHeadersKey="CharEncoding">@JSON</HTTPHeadersItem><HTTPHeadersItem HTTPHeadersKey="EnsConfigName">HTTPWorkBench</HTTPHeadersItem><HTTPHeadersItem HTTPHeadersKey="HTTPVersion">1.1</HTTPHeadersItem><HTTPHeadersItem HTTPHeadersKey="HttpRequest">POST</HTTPHeadersItem><HTTPHeadersItem HTTPHeadersKey="IParams">0</HTTPHeadersItem><HTTPHeadersItem HTTPHeadersKey="RawParams" xsi:nil="true"></HTTPHeadersItem><HTTPHeadersItem HTTPHeadersKey="TranslationTable">JSON</HTTPHeadersItem><HTTPHeadersItem HTTPHeadersKey="URL">/</HTTPHeadersItem><HTTPHeadersItem HTTPHeadersKey="content-length">0</HTTPHeadersItem>
<HTTPHeadersItem HTTPHeadersKey="host">localhost:9980</HTTPHeadersItem></HTTPHeaders>
</HTTPMessage>
Si veo en la operación la respuesta al JSON veo lo siguiente.
<Stream></Stream>
<Type>BG</Type>
<HTTPHeaders><HTTPHeadersItem HTTPHeadersKey="CONTENT-LENGTH">0</HTTPHeadersItem><HTTPHeadersItem HTTPHeadersKey="CONTENT-TYPE">text/plain; charset="UTF-8"</HTTPHeadersItem><HTTPHeadersItem HTTPHeadersKey="StatusLine">HTTP/1.1 500 Internal Server Error</HTTPHeadersItem></HTTPHeaders>
</HTTPMessage>
El codigo de la operacion que envio es el siguiente:
Class Test.BO.Adapter.HTTPOutboundAdapter Extends EnsLib.HTTP.OutboundAdapter
{
/// Send a POST to the configured Server, Port and URL, sending form data to the named form variables.
Method Post(Output pHttpResponse As %Net.HttpResponse, pFormVarNames As %String, pData...) As %Status
{ quit ..SendFormDataArray(.pHttpResponse, "POST", ..GetRequest(), .pFormVarNames, .pData)
}
ClassMethod GetRequest() As %Net.HttpRequest
{
set request = ##class(%Net.HttpRequest).%New()
set request.ContentType = "application/json"
quit request
}
}El adaptador que esta recibiendo es un EnsLib.REST.GenericService, deberia crear una clase que heredara de la anterior, ¿para poner los log que me indicas?¿Como los pondría para ver si recibo algún valor cuando el stream esta vacio?
He revisado en BBDD la tabla EnsLib_HTTP.GenericMessage y en streamBG veo
| 3485%Stream.GlobalBinary^CacheStream |
No hay logica aun, ya que no tengo claro que este recibiendo el json, y por tanto es logico el error 500.
Un Saludo
- Inicie sesión para enviar comentarios
.png)
.png)
.png)