Forum Discussion

NAVTEQ's avatar
NAVTEQ
Occasional Contributor
14 years ago

Findings soapUI pro 4.5 Beta 1 on Mac OS X Lion

Hi,

I tried the new 4.5 Beta of SoapUI pro and encountered following issues:

Pipes ('|') in resource paths are not handled correct: Using a '|' in a template parameter will remove complete path; this means that request is going to http://localhost instead of http://localhost/service/resource/<parameter>.
Error message is:
ERROR:java.net.URISyntaxException: Illegal character in path at index 34: http://localhost/service/layer/usr|test

Percent encoding the template parameter does not work, because soapUI encodes '%' symbol. E.g. parameter usr%7Ctest will be encoded to usr%257Ctest

And I cannot enter any symbol that requires ALT + another key combination in the payload text field on request window. So I am unable to enter JSON because I am unable to enter {,},[ and ] for example. Copy and paste works, though.

3 Replies

  • Hi,

    Thanks for this - we'll look into the ALT-key issue. Regarding the endpoints - hm... - what if you encode it and select the "Preencoded Endpoints" option in the global HTTP Settings?

    regards!

    /Ole
    SmartBear Software
  • NAVTEQ's avatar
    NAVTEQ
    Occasional Contributor
    Hi,

    checking "Do not URL-escape service endpoints" fixes only part of the problem. The requests work now, but the API still encodes the URLs. The following code does not work (SubmitListener.beforeSubmit event):


    Request request = submit.getRequest();
    RestRequestInterface rif = (RestRequestInterface) request;
    String endpoint = request.getEndpoint();
    String fullLink = RestUtils.expandPath(request.getResource().getFullPath(), request.getParams(), rif);
    String method = endpoint + fullLink;
    log.info("Get REST resource/method=" + method);

    Log output is

    Fri Mar 09 14:44:28 CET 2012:INFO:Get REST resource/method=http://localhost/service/usr%257Ctest

    We need the correct resource URL to do AWS authentication.

    Also, another (minor) issue: Quitting SoapUI with "cmd-Q" does *not* save the projects, even if "Automatically save all projects on exit" is checked. Very annoying if you worked on a new project and accidentally press "cmd-Q" before saving manually ...
  • NAVTEQ's avatar
    NAVTEQ
    Occasional Contributor
    Hi,

    just retested with Beta 2:

    • Entering square and curly brackets works now. But some ALT+key combinations also open menu list (e.g. ALT+f for File Menu).

    • Using pipe symbol in template parameters still result in

      Thu Mar 15 15:51:38 CET 2012:ERROR:java.net.URISyntaxException: Illegal character in path at index 41: http://localhost/service/usr|jwegne|test
      java.net.URISyntaxException: Illegal character in path at index 41: http://localhost/service/usr|jwegne|test
      at java.net.URI$Parser.fail(URI.java:2810)
      at java.net.URI$Parser.checkChars(URI.java:2983)
      at java.net.URI$Parser.parseHierarchical(URI.java:3067)
      at java.net.URI$Parser.parse(URI.java:3015)
      at java.net.URI.<init>(URI.java:577)
      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(Executors.java:441)
      at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
      at java.util.concurrent.FutureTask.run(FutureTask.java:138)
      at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
      at java.lang.Thread.run(Thread.java:680)

    • CMD+Q still closes soapUI without saving.


    My second biggest problem (entering brackets) has been fixed. If you solve the encoding problem of pipes then I would be perfectly happy.

    Thank you very much.