Skip to content
GitLab
    • Explore Projects Groups Snippets
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
  • Merge requests
  • !14092

[Spring] Fix bean name collisions

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Administrator requested to merge github/fork/JohnnyMarnell/jm/bugfix-enum-case into master 2 years ago
  • Overview 4
  • Commits 7
  • Pipelines 0
  • Changes 55

Created by: JohnnyMarnell

kebab-case or even single uncapitalized foo as schema name for OAS enum yields compiler errors in Spring java generated EnumConverterConfiguration.java. this was since fixed in main

Also, if there are multiple of these classes (or others with @Bean annotations) generated (e.g. one way is through multiple openapi.yaml versioning), Spring will error with bean name collision, since it defaults to the method name.

So, use Pascal case, and uniquely name the @Beans with fully qualified class prepend.

Spring Technical Committee: @cachescrubber @welshm @MelleD @atextor @manedev79 @javisst @borsch @banlevente @Zomzog

PR checklist

  • Read the contribution guidelines.
  • Pull Request title clearly describes the work in the pull request and Pull Request description provides details about how to validate the work. Missing information here may result in delayed response from the community.
  • Run the following to build the project and update samples:
    ./mvnw clean package 
    ./bin/generate-samples.sh
    ./bin/utils/export_docs_generators.sh
    Commit all changed files. This is important, as CI jobs will verify all generator outputs of your HEAD commit as it would merge with master. These must match the expectations made by your contribution. You may regenerate an individual generator by passing the relevant config(s) as an argument to the script, for example ./bin/generate-samples.sh bin/configs/java*. For Windows users, please run the script in Git BASH.
  • File the PR against the correct branch: master (6.3.0) (minor release - breaking changes with fallbacks), 7.0.x (breaking changes without fallbacks)
  • If your PR is targeting a particular programming language, @mention the technical committee members, so they are more likely to review the pull request.

Activity

  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
Please register or sign in to reply

There are currently no pipelines.

To run a merge request pipeline, the jobs in the CI/CD configuration file must be configured to run in merge request pipelines.

0 Assignees
None
Assign to
2 Reviewers
Oleh Kurpiak's avatar
Oleh Kurpiak
Jim Schubert's avatar
Jim Schubert
Request review from
Labels
0
None
0
None
    Assign labels
  • Manage project labels

Milestone
6.3.0
6.3.0 (expired)
None
Time tracking
No estimate or time spent
Lock merge request
Unlocked
3
3 participants
Jim Schubert
Oleh Kurpiak
Administrator
Reference: OpenAPITools/openapi-generator!14092
Source branch: github/fork/JohnnyMarnell/jm/bugfix-enum-case

Menu

Explore Projects Groups Snippets