Forum Discussion

anallagundla's avatar
anallagundla
Contributor
14 years ago

"%" gets double encoded on soapUI 4.0.0 and 4.0.2

Hi Ole/Team

I have a URL something like this :
https://qaa.ceidd.net/domain/v1/entity/ ... on.clause=adult!%253Atrue:restriction.cap=1000:snrtype=cosmo.series:snrtype=cosmo.oto:modifier=count?reply=xml&offset=0&expand=movie;owner:meta&expand=oto;owner:meta&expand=series;owner:meta

The keyword adult!%253A needs to be adult!%3A, but looks like soapUI is double encoding the % character. Is there a way we can resolve this?

Thanks
-A

5 Replies

  • Hi,

    thanks - and this happens in 4.0.2 even if you select the pre-encoded endpoints option in the global http settings?

    regards!

    /Ole
    SmartBear Software
  • Hi Ole/Team,

    So i tried on latest SoapUi 4.0.2 nightly build, i got back an SSL Peer unverified error


    • Fri Jan 13 09:14:52 PST 2012:ERROR:javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated
    • javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated
    • at com.sun.net.ssl.internal.ssl.SSLSessionImpl.getPeerCertificates(Unknown Source)
    • at org.apache.http.conn.ssl.AbstractVerifier.verify(AbstractVerifier.java:128)
    • at org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFactory.java:390)
    • at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:148)
    • at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:149)
    • at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:121)
    • at org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:561)
    • at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:415)
    • at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:820)
    • at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:754)
    • at com.eviware.soapui.impl.wsdl.support.http.HttpClientSupport$Helper.execute(HttpClientSupport.java:108)
    • at com.eviware.soapui.impl.wsdl.support.http.HttpClientSupport.execute(HttpClientSupport.java:209)
    • at com.eviware.soapui.impl.wsdl.submit.transports.http.HttpClientRequestTransport.sendRequest(HttpClientRequestTransport.java:195)
    • at com.eviware.soapui.impl.wsdl.WsdlSubmit.run(WsdlSubmit.java:123)
    • at com.eviware.soapui.impl.wsdl.WsdlSubmit.submitRequest(WsdlSubmit.java:76)
    • at com.eviware.soapui.impl.rest.RestRequest.submit(RestRequest.java:208)
    • at com.eviware.soapui.impl.wsdl.teststeps.RestTestRequestStep.run(RestTestRequestStep.java:853)
    • at com.eviware.soapui.impl.wsdl.support.AbstractTestCaseRunner.runTestStep(AbstractTestCaseRunner.java:232)
    • at com.eviware.soapui.impl.wsdl.testcase.WsdlTestCaseRunner.runCurrentTestStep(WsdlTestCaseRunner.java:48)
    • at com.eviware.soapui.impl.wsdl.support.AbstractTestCaseRunner.internalRun(AbstractTestCaseRunner.java:141)
    • at com.eviware.soapui.impl.wsdl.support.AbstractTestCaseRunner.internalRun(AbstractTestCaseRunner.java:42)
    • at com.eviware.soapui.impl.wsdl.support.AbstractTestRunner.run(AbstractTestRunner.java:135)
    • 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$Worker.runTask(Unknown Source)
    • at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    • at java.lang.Thread.run(Unknown Source)

    Note : our Keystore for SSL certificate is set correct

    But on soapui 4.0.0, we have set pre-encoded endpoints, see the image below



    Looks it doesn't help in setting pre-encoded endpoints.

    Do let me know if you need more information!

    Thanks
    -A
  • Hi,

    thanks for this - I've tried to get this working in the latest nightly - please give it a try and let us know (don't forget to check the pre-encoded endpoints option)

    regards!

    /Ole
    SmartBear Software
  • Hi /Ole

    Thanks - I tried the latest nightly 4.0.2 build and got back nullpointer exception for any REST request i try. I have attached error log below.

    Build details :

    soapUI Pro 4.0.2-SNAPSHOT, copyright (C) 2007-2011 SmartBear Software http://www.soapui.org | http://smartbear.com Build soapui-pro-4.0.2-daily-2012-01-16-[2], Build Date 2012/01/16 02:47


    Tue Jan 17 08:44:28 PST 2012:ERROR:org.apache.commons.httpclient.URIException: escaped absolute path not valid
    org.apache.commons.httpclient.URIException: escaped absolute path not valid
    at org.apache.commons.httpclient.URI.setRawPath(URI.java:2837)
    at org.apache.commons.httpclient.URI.parseUriReference(URI.java:2023)
    at org.apache.commons.httpclient.URI.<init>(URI.java:167)
    at com.eviware.soapui.support.UriUtils.createURI(UriUtils.java:38)
    at com.eviware.soapui.impl.wsdl.submit.filters.EndpointRequestFilter.filterAbstractHttpRequest(EndpointRequestFilter.java:53)
    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:128)
    at com.eviware.soapui.impl.wsdl.WsdlSubmit.run(WsdlSubmit.java:123)
    at com.eviware.soapui.impl.wsdl.WsdlSubmit.submitRequest(WsdlSubmit.java:76)
    at com.eviware.soapui.impl.rest.RestRequest.submit(RestRequest.java:208)
    at com.eviware.soapui.impl.wsdl.teststeps.RestTestRequestStep.run(RestTestRequestStep.java:853)
    at com.eviware.soapui.impl.wsdl.support.AbstractTestCaseRunner.runTestStep(AbstractTestCaseRunner.java:232)
    at com.eviware.soapui.impl.wsdl.testcase.WsdlTestCaseRunner.runCurrentTestStep(WsdlTestCaseRunner.java:48)
    at com.eviware.soapui.impl.wsdl.support.AbstractTestCaseRunner.internalRun(AbstractTestCaseRunner.java:141)
    at com.eviware.soapui.impl.wsdl.support.AbstractTestCaseRunner.internalRun(AbstractTestCaseRunner.java:42)
    at com.eviware.soapui.impl.wsdl.support.AbstractTestRunner.run(AbstractTestRunner.java:135)
    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$Worker.runTask(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
    Tue Jan 17 08:44:28 PST 2012:ERROR:java.lang.NullPointerException
    java.lang.NullPointerException
    at com.eviware.soapui.impl.wsdl.submit.filters.HttpRequestFilter.filterHttpRequest(HttpRequestFilter.java:75)
    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:128)
    at com.eviware.soapui.impl.wsdl.WsdlSubmit.run(WsdlSubmit.java:123)
    at com.eviware.soapui.impl.wsdl.WsdlSubmit.submitRequest(WsdlSubmit.java:76)
    at com.eviware.soapui.impl.rest.RestRequest.submit(RestRequest.java:208)
    at com.eviware.soapui.impl.wsdl.teststeps.RestTestRequestStep.run(RestTestRequestStep.java:853)
    at com.eviware.soapui.impl.wsdl.support.AbstractTestCaseRunner.runTestStep(AbstractTestCaseRunner.java:232)
    at com.eviware.soapui.impl.wsdl.testcase.WsdlTestCaseRunner.runCurrentTestStep(WsdlTestCaseRunner.java:48)
    at com.eviware.soapui.impl.wsdl.support.AbstractTestCaseRunner.internalRun(AbstractTestCaseRunner.java:141)
    at com.eviware.soapui.impl.wsdl.support.AbstractTestCaseRunner.internalRun(AbstractTestCaseRunner.java:42)
    at com.eviware.soapui.impl.wsdl.support.AbstractTestRunner.run(AbstractTestRunner.java:135)
    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$Worker.runTask(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)

    If it helps i also attached the image of HTTP Settings i set in the soapUI