openapi-generator icon indicating copy to clipboard operation
openapi-generator copied to clipboard

[java][resttemplate] Fix model combining properties and additional properties

Open JoaoBrlt opened this issue 1 year ago • 3 comments

When additionalProperties is set to true, use an additionalProperties attribute and @JsonAnySetter and @JsonAnyGetter annotations instead of extending HashMap.

This fixes the issue https://github.com/OpenAPITools/openapi-generator/issues/17361 only for the resttemplate library.

I also created the following pull requests to fix the same issue for other libraries:

  • https://github.com/OpenAPITools/openapi-generator/pull/19711 for the webclient library.
  • https://github.com/OpenAPITools/openapi-generator/pull/19713 for the feign library.

PR checklist

  • [x] Read the contribution guidelines.
  • [x] 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.
  • [x] Run the following to build the project and update samples:
    ./mvnw clean package 
    ./bin/generate-samples.sh ./bin/configs/*.yaml
    ./bin/utils/export_docs_generators.sh
    
    (For Windows users, please run the script in Git BASH) 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*. IMPORTANT: Do NOT purge/delete any folders/files (e.g. tests) when regenerating the samples as manually written tests may be removed.
  • [x] File the PR against the correct branch: master (upcoming 7.x.0 minor release - breaking changes with fallbacks), 8.0.x (breaking changes without fallbacks)
  • [x] If your PR is targeting a particular programming language, @mention the technical committee members, so they are more likely to review the pull request.

@bbdouglas (2017/07) @sreeshas (2017/08) @jfiala (2017/08) @lukoyanov (2017/09) @cbornet (2017/09) @jeff9finger (2018/01) @karismann (2019/03) @Zomzog (2019/04) @lwlee2608 (2019/10) @martin-mfg (2023/08) @wing328

JoaoBrlt avatar Sep 28 '24 21:09 JoaoBrlt

Hi @JoaoBrlt, thanks for the PRs! They look really good. 👍 I'll approve all 3 of them. May I ask you to resolve the conflicts with master?

martin-mfg avatar Oct 15 '24 20:10 martin-mfg

Hey @martin-mfg! :wave: Thanks for approving the pull requests. Yeah, no problem. I'll take a look right now.

JoaoBrlt avatar Oct 16 '24 12:10 JoaoBrlt

Hey @martin-mfg! I updated the pull requests to resolve the conflicts with the master branch. :heavy_check_mark: I redid the modifications using the latest Mustache templates to make sure to benefit from the latest changes. Don't hesitate to tell me if there's any issue.

JoaoBrlt avatar Oct 16 '24 14:10 JoaoBrlt

Hey @martin-mfg @wing328! :wave: Do you think we could merge these pull requests for the next version? This would be very useful for my current project. Indeed, we have to manually patch the OpenAPI specs to fix the code generation. I would be happy to help if needed. :smile:

JoaoBrlt avatar Oct 20 '24 14:10 JoaoBrlt

Hey @martin-mfg @wing328! 👋 Do you think we could merge these pull requests for the next version? This would be very useful for my current project. Indeed, we have to manually patch the OpenAPI specs to fix the code generation. I would be happy to help if needed. 😄

just for your info: I've done everything I could by approving your PR. :) Now it's up to @wing328 to merge it, because I don't have merge permissions.

martin-mfg avatar Oct 22 '24 14:10 martin-mfg

Hi @wing328 ! :wave: I just rebased the branch to avoid conflicts. Do you think we could merge this pull request? It should be a quick win and it would be very useful for my current project.

JoaoBrlt avatar Nov 21 '24 21:11 JoaoBrlt

@JoaoBrlt thanks for the PR

please ping me via Slack for a quick chat when you've time: https://join.slack.com/t/openapi-generator/shared_invite/zt-2uoef5v0g-XGwo8~2oJ3EoziDSO1CmdQ

wing328 avatar Nov 22 '24 06:11 wing328

Hi @wing328 @JoaoBrlt @martin-mfg

I see that this PR has been approved and I don't quite know what state it is in or why it doesn't merge.

For me it would be very useful and I see that there are several issues related to this topic.

jorgerod avatar Feb 06 '25 15:02 jorgerod

Are there any plans to merge this? this bug also blocks us

mohsen-saeidi avatar Feb 09 '25 08:02 mohsen-saeidi

thanks for the PR, which has been merged.

sorry for the delay in merging as there're too many PRs pending review.

have a nice weekend.

wing328 avatar Feb 14 '25 16:02 wing328

Hi @wing328 ! No problem, thank you for all the work that goes into maintaining the project! :muscle: Have a nice weekend.

JoaoBrlt avatar Feb 14 '25 17:02 JoaoBrlt