gvalenc
14 years agoNew Contributor
Parameters with space result in URL truncation of REST reque
I have a REST resource with a parameter /groups/{groupName}?username=user. If groupName has a space in it, an exception is thrown and then the actual request that is sent is truncated (notice most of the resource path is gone).
GET https://<server>:9443/myapp_ui/jaxrs?username=userA HTTP/1.1
Accept-Encoding: gzip,deflate
Here is the exception (index 50 is the space after group):
Fri Apr 27 09:34:00 PDT 2012:ERROR:java.net.URISyntaxException: Illegal character in path at index 50: https://<server>:9443/myapp_ui/jaxrs/groups/group A
java.net.URISyntaxException: Illegal character in path at index 50: https://<server>:9443/myapp_ui/jaxrs/groups/group A
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:226)
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:177)
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)
GET https://<server>:9443/myapp_ui/jaxrs?username=userA HTTP/1.1
Accept-Encoding: gzip,deflate
Here is the exception (index 50 is the space after group):
Fri Apr 27 09:34:00 PDT 2012:ERROR:java.net.URISyntaxException: Illegal character in path at index 50: https://<server>:9443/myapp_ui/jaxrs/groups/group A
java.net.URISyntaxException: Illegal character in path at index 50: https://<server>:9443/myapp_ui/jaxrs/groups/group A
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:226)
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:177)
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)