Forum Discussion

jonol's avatar
New Contributor
7 years ago

org.apache.commons.lang.NullArgumentException: schemeName must not be null.

I'm trying to call a simple GET from a simple Swagger defined API and ReadyAPI (2.0.0) does not even make the call, logging this error in the log:


  • org.apache.commons.lang.NullArgumentException: schemeName must not be null.
  • at$SoapUISchemePortResolver.resolve(
  • at$SoapUIHttpClient.getDefaultPort(
  • at
  • at com.eviware.soapui.impl.wsdl.submit.transports.http.HttpClientRequestTransport.getDefaultHttpPort(
  • at com.eviware.soapui.impl.wsdl.submit.transports.http.HttpClientRequestTransport.captureMetrics(
  • at com.eviware.soapui.impl.wsdl.submit.transports.http.HttpClientRequestTransport.sendRequest(
  • at
  • at java.util.concurrent.Executors$ Source)
  • at Source)
  • at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
  • at java.util.concurrent.ThreadPoolExecutor$ Source)
  • at Source)

I guess there is something ReadyAPI is expecting from Swagger, but it's hard to what/where. I've attached the Swagger JSON (generated from Swagger YAML).

2 Replies

  • StevenColon's avatar
    SmartBear Alumni (Retired)

    Thank you for posting to our Community Forum. 


    I am not able to reproduce this issue with the provided json file. 


    Please outline steps that led up to this issue to help in the reproduction. 


    If you imported a yaml file (not a json) please provide that file as well. 



    Have a great day!  

    • jonol's avatar
      New Contributor

      Well, we're not seeing this always, but sometimes. We've made a variant with schemes: [ "http" ], but those also fails now and again. It seems to either work or not, once imported, and we're seeing this in 2.0.0, 2.0.2 and 2.1.0. We have seen different projects based off of the same file in the same ReadyAPI instance fail and not fail. This volatility makes it hard to debug, but we basically do Import Swagger, point to the file, import without errors and create a simple GET request that fails (or not).

      And it's always the JSON, itself generated from YAML.