OpenAPITools / OpenAPITools/openapi-generator

[BUG][SPRING] Schema Mapping for External References is not used for request body

Open
#20,632 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Issue: Bug
Dominant language
Java
Stars
26.8k
Forks
7.7k
PR merge metrics
PR metrics pending

Description

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

The schema mappings for external references do not work when applied to a requestBody and when the object have no properties. The expected behavior is that external schemas should be correctly mapped and resolved, but instead, the generator either ignores the mapping and the generated type is always object

Example with the current pet store example

Pet=my.package.Pet

    Pet:
      title: a Pet
      description: A pet for sale in the pet store
      type: object

Expected Behavior:
The external schema reference should be correctly mapped and included in the generated output.

Actual Behavior:
The schema mapping is ignored.

Related issues/PRs

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the current-master Spring generator case using the pet store example and the schemaMappings value Pet=my.package.Pet. Start by tracing requestBody handling for an external, propertyless schema; done means the generated request-body type uses my.package.Pet instead of object, with regression coverage for the mapping.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, openapi, spring
Domain
api, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.