1

I'm use progress 4Gl and i have to call a webservice that uses ISO-8859-1 but i receive the error when a execute the run statment:

Error receiving Web Service Response: Cannot get 'ISO-8859-1' transcoder from the TranscoderRepository. (11773)

And the developer of webservice can not change the encoding.

Someone can help me?

Meli
  • 151
  • 3
  • 13

2 Answers2

3

Progress only supports the UTF-8 and UTF-16 encoding with the OpenEdge Web Services as required by the WS-I

According to this knowledgebase entry

Jensd
  • 7,886
  • 2
  • 28
  • 37
  • So there is no solution? – Meli Apr 28 '14 at 12:41
  • 1
    Perhaps you could try something like in this example http://stackoverflow.com/questions/12222607/how-to-do-a-soap-wsdl-web-services-call-from-the-command-line - save the response to disc and then parse it. Not very nice though. – Jensd Apr 28 '14 at 12:50
  • I tried to do what you say, but the problem is that I fail to get the response because the RUN statement throws the error above described – Meli Apr 28 '14 at 13:02
  • Using curl or other tool would eliminate the RUN-statement altogether. You would need to: Create a request, call curl, save resulting xml to file, parse xml any way you prefer (X-DOCUMENT, DATASET etc) and then handle the result. – Jensd Apr 28 '14 at 13:43
0

If you're sure the data is standard ascii (character values with ascii value < 128) there is a work-around.

  • You download the wsdl of the webservice locally.
  • Replace iso8859-1 but utf-8 in the locally saved file.
  • Use that wsdl instead of the one from the webservice.

This is a work-around, not an ideal solution.

carl verbiest
  • 1,113
  • 1
  • 15
  • 30
  • I already did, but when running a webservice operation throws the same error. Apparently there are more xml with iso8859-1 which I have no access. – Meli Apr 30 '14 at 12:00