Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • O openapi-generator
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 3,476
    • Issues 3,476
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 402
    • Merge requests 402
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • OpenAPI Tools
  • openapi-generator
  • Issues
  • #11058
Closed
Open
Issue created Dec 07, 2021 by Administrator@rootContributor5 of 6 checklist items completed5/6 checklist items

[BUG][JAVA] $ref not working correctly

Created by: maxbec

Bug Report Checklist

  • Have you provided a full/minimal spec to reproduce the issue?
  • Have you validated the input using an OpenAPI validator (example)?
  • Have you tested with the latest master to confirm the issue still exists?
  • Have you searched for related issues/PRs?
  • What's the actual output vs expected output?
  • [Optional] Sponsorship to speed up the bug fix or feature request (example)
Description

We have the following swagger folder structure in our project:

- api
    - endpoints
    - schemas
    - common-elements (git submodule)
       - default-endpoints
          - Healthcheck.yml
       - default-schemas
          DefaultHeaders.yml
          Error.yml
- main_api.yml  
  

Now in the Healthcheck file we have the following code which is referencing stuff in the common-elements git submodule:

500:
  description: Error on TCS side
  headers:
    cobaActivityID:
      $ref: "../common-elements/headers/DefaultHeaders.yaml#/Response/cobaActivityID"
    cobaMachineName:
      $ref: "../common-elements/headers/DefaultHeaders.yaml#/Response/cobaMachineName"
  content:
    application/json;charset=utf-8:
      schema:
        $ref: "../common-elements/schemas/Error.yaml#/Error"

With this setup we get the following error on generation and even on the teamcity build it is not working.

[WARNING] Exception while resolving:
java.lang.RuntimeException: Unable to load RELATIVE ref: ./common-elements/default-endpoints/common-elements/default-schemas/Error.yaml path: C:\dev\bitbucket\test\api

When we change $ref: "../common-elements/schemas/Error.yaml#/Error" for $ref: "./schemas/Error.yaml#/Error" it is working. But we only need to change it for the schema.

I need your help now. What is wrong here and what would be the correct referencing of the files?

openapi-generator version

5.3.0

Generation Details

mvn clean generate-sources

Steps to reproduce

See above

Assignee
Assign to
Time tracking