Forum Discussion

koteno4ka's avatar
koteno4ka
Occasional Contributor
11 years ago

rest encode cyrillic chars - failed

Hi all,

i've developed and trying to pass some REST tests (SoapUi Pro 4.6.4; Build Date: 20140113-1235) with parameter values containing cyrillic characters.
REST is built as a query string with a set of parameters.

Request origin:
https://someurl/payment.do?serviceParams={"fineId":"18810ИR77АА7909882Z8","payerIdentifierType":"101"}


1 - Here's what i get when trying to send the GET requst (and parameter urlencode status):
SoapUi Pro urlencode enabled:

https://someurl/payment.do?serviceParams=%7B%22fineId%22%3A%2218810%C8R77%D4%C07909882Z8%22%2C%22payerIdentifierType%22%3A%22101%22%7D

note that this string can not be urldecoded properly - see for yourself via http://meyerweb.com/eric/tools/dencoder/

using the online service i get urlencode for my original request as (param values urlencoded only):
https://someurl/payment.do?serviceParams=%7B%22fineId%22%3A%2218810%D0%98R77%D0%90%D0%907909882Z8%22%2C%22payerIdentifierType%22%3A%22101%22%7D



SoapUi Pro urlencode disabled

https://someurl/payment.do?serviceParams={"fineId":"18810?R77??7909882Z8","payerIdentifierType":"101"}


2 - Here's what i get when trying to GET the requst:

java.net.URISyntaxException: Illegal character in query at index41: https://someurl/payment.do?serviceParams={"fineId":"18810ИR77АА7909882Z8","payerIdentifierType":"101"}

at java.net.URI$Parser.fail(Unknown Source)
at java.net.URI$Parser.checkChars(Unknown Source)
at java.net.URI$Parser.parseHierarchical(Unknown Source)
at java.net.URI$Parser.parse(Unknown Source)
at java.net.URI.<init>(Unknown Source)
at org.apache.http.client.utils.URIUtils.createURI(URIUtils.java:106)
at com.eviware.soapui.impl.wsdl.submit.filters.HttpRequestFilter.filterHttpRequest(HttpRequestFilter.java:257)
at com.eviware.soapui.impl.wsdl.submit.filters.RestRequestFilter.filterRestRequest(RestRequestFilter.java:39)
at com.eviware.soapui.impl.wsdl.submit.filters.AbstractRequestFilter.filterAbstractHttpRequest(AbstractRequestFilter.java:39)
at com.eviware.soapui.impl.wsdl.submit.filters.AbstractRequestFilter.filterRequest(AbstractRequestFilter.java:31)
at com.eviware.soapui.impl.wsdl.submit.transports.http.HttpClientRequestTransport.sendRequest(HttpClientRequestTransport.java:178)
at com.eviware.soapui.impl.wsdl.WsdlSubmit.run(WsdlSubmit.java:123)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)



3 - Here's what i get when trying to POST the requst using "Simple REST Client 1.2" (https://chrome.google.com/webstore/deta ... bgofnpcjmb):

URL https://someurl/payment.do
HEADER: Content-Type: application/x-www-form-urlencoded
DATA serviceParams={"fineId":"18810ИR77ФА7909882Z8","payerIdentifierType":"101"}


result POST: https://someurl/payment.do?serviceParam ... 2101%22%7D

4 - When I send the request with SoapUi 4.6.0 free it urlencodes just fine. At all later vesrsions the problem persists.
https://someurl/payment.do?serviceParams=%7B%22fineId%22%3A%2218810%D0%98R77%D0%90%D0%907909882Z8%22%2C%22payerIdentifierType%22%3A%22101%22%7D


Will you pls help to solve the problem?
  • GiscardN's avatar
    GiscardN
    Frequent Contributor
    Hi,

    Please try this fix:
    Open the "soapUI-4.6.4.vmoptions" file located in the "bin" directory of the SoapUI application with a text editor and add this line at the end of the file:
    -Dfile.encoding=UTF8
    Save the fil, restart SoapUI and try your request again.

    Regards,

    Giscard
    SmartBear Support
  • koteno4ka's avatar
    koteno4ka
    Occasional Contributor
    suipressenter wrote:
    Hi,

    Please try this fix:
    Open the "soapUI-4.6.4.vmoptions" file located in the "bin" directory of the SoapUI application with a text editor and add this line at the end of the file:
    -Dfile.encoding=UTF8
    Save the fil, restart SoapUI and try your request again.

    Regards,

    Giscard
    SmartBear Support


    Merci, all fixed now =)