WebService REST с sdt из-за параметра

Следуя примеру, что говорит здесь, у Меня Есть ws rest, который получает sdt:

parm(in:&sdtPrueba,out:&salida);

&salida="ok"
guardolog.Call(&Pgmname+"#valor:"+&sdtPrueba.ToJson().Trim())

Свойства webservice:

introducir la descripción de la imagen aquí

и sdtPrueba, который он получает: introducir la descripción de la imagen aquí

Чтобы тратить webservice я делаю следующее:

     &servicio=&ServerProtocol+"://"+&ServerHost+&ServerBaseURLRest+"wsprueba"
//la url resultante queda asi: HTTP://192.168.10.169/webapp/rest/wsprueba
    &metodo="POST"
    &httpclient.Host = &serverHost.Trim()
    &httpclient.Port = &serverPort
    &httpclient.BaseUrl = &ServerBaseURLRest.Trim()
    &httpclient.AddHeader(!'Content-type',!'application/json')
    &sdtPrueba.sdtPruebaID=1
    &sdtPrueba.sdtPruebaTxt="Pruebaaaa"
    &body='{"sdtPrueba":'+&sdtPrueba.ToJson().Trim()+"}"
    &httpclient.AddString(&body)
    &httpclient.Execute(&metodo,&servicio)
    &status=&httpclient.StatusCode.ToString().Trim()
    &respuesta=&httpclient.ToString().Trim()

такая расписка как ответ следующее:

{"error":{"code":"500","message":"El mensaje entrante tiene un formato de mensaje inesperado 'Raw'. Los formatos de mensaje esperados para la operación son 'Xml'; 'Json'. Esto se puede deber a que no se ha configurado un WebContentTypeMapper en el enlace. Para obtener más información, consulte la documentación de WebContentTypeMapper."}}

Поскольку я смог видеть, проблема находится в, как я происхожу body. Потому что снимая параметр sdt и прекращаясь body webservice функционирует верно.

Я нуждаюсь в руке с этим. Спасибо

2
задан 24.09.2019, 06:10
1 ответ

ему не хватает двойной одной comila"

- Он Говорит: & body = '{ "sdtPrueba": ' +& sdtPrueba. ToJson ().Trim () + "}" - он Должен говорить: & body = '{ "sdtPrueba": " ' + & sdtPrueba. ToJson ().Trim () + "}"

0
ответ дан 03.12.2019, 15:23

Теги

Похожие вопросы