Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SwaggerCompatConverter()#read on v 1.2 Doc Showing 0 Paths #82

Closed
kevinmeredith opened this issue Aug 28, 2015 · 4 comments
Closed

SwaggerCompatConverter()#read on v 1.2 Doc Showing 0 Paths #82

kevinmeredith opened this issue Aug 28, 2015 · 4 comments

Comments

@kevinmeredith
Copy link

Given the following Swagger doc:

$cat /Users/kevin/Workspace/Work/myproject/src/test/resources/swagger_doc_v1.2.json
{
  "apiVersion" : "1.0",
  "swaggerVersion" : "1.2",
  "basePath" : ".",
  "apis" : [
    {
      "path": "/fields",
      "description" : "Resource for fields"
    },
    {
      "path": "/plots",
      "description": "Operation about Plot resource"
    }
  ],
  "info" : {
    "title" : "Location",
    "description" : "Location apis"
  }

Using version 1.0.10, I try to parse it using SwaggerCompatConverter()#read:

scala> uriPath
res4: String = /Users/kevin/Workspace/Work/myproject/src/test/resources/swagger_doc_v1.2.json

scala> new SwaggerCompatConverter().read(uriPath)
java.io.FileNotFoundException: /Users/kevin/Workspace/Work/myproject/src/test/resources/fields (No such file or directory)
    at java.io.FileInputStream.open0(Native Method)
    at java.io.FileInputStream.open(FileInputStream.java:195)
    at java.io.FileInputStream.<init>(FileInputStream.java:138)
    at com.fasterxml.jackson.core.JsonFactory.createParser(JsonFactory.java:708)
    at com.fasterxml.jackson.databind.ObjectMapper.readTree(ObjectMapper.java:1861)
    at io.swagger.parser.SwaggerCompatConverter.readDeclaration(SwaggerCompatConverter.java:437)
    at io.swagger.parser.SwaggerCompatConverter.read(SwaggerCompatConverter.java:127)
    at io.swagger.parser.SwaggerCompatConverter.read(SwaggerCompatConverter.java:74)
java.io.FileNotFoundException: /Users/kevin/Workspace/Work/myproject/src/test/resources/plots (No such file or directory)
    at java.io.FileInputStream.open0(Native Method)
    at java.io.FileInputStream.open(FileInputStream.java:195)
    at java.io.FileInputStream.<init>(FileInputStream.java:138)
io.swagger.parser.SwaggerCompatConverter.readDeclaration(SwaggerCompatConverter.java:437)
    at io.swagger.parser.SwaggerCompatConverter.read(SwaggerCompatConverter.java:127)
    at io.swagger.parser.SwaggerCompatConverter.read(SwaggerCompatConverter.java:74)
res6: io.swagger.models.Swagger = io.swagger.models.Swagger@a682a8ca

And it shows 0 paths:

scala> res6.getPaths
res8: java.util.Map[String,io.swagger.models.Path] = {}

Am I doing something wrong?

Thanks,
Kevin

@webron
Copy link
Contributor

webron commented Aug 28, 2015

Where are your "/fields" and "/plots" files located?

@kevinmeredith
Copy link
Author

Hi @webron -

I don't have those files. I just copied this Swagger document from another work project.

I assumed that this parser, i.e. Swagger parsers in general, simply read a JSON file and populated a POJO without performing IO.

Evidently that's wrong?

@webron
Copy link
Contributor

webron commented Aug 28, 2015

1.2 specs are multi-file definitions. If you don't have all the files, you don't have the full description of the API. In fact, the main file doesn't even describe any of the operations or models, so you'd end up having no paths.

@kevinmeredith
Copy link
Author

OK - I'll close this ticket then. It was caused by my lack of understanding.

Thanks for the explanation!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants