You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "James Netherton (Jira)" <ji...@apache.org> on 2023/03/22 09:54:00 UTC

[jira] [Created] (CAMEL-19183) camel-rest-openapi: Add an option to set the default content types used in the generated OpenAPI document

James Netherton created CAMEL-19183:
---------------------------------------

             Summary: camel-rest-openapi: Add an option to set the default content types used in the generated OpenAPI document
                 Key: CAMEL-19183
                 URL: https://issues.apache.org/jira/browse/CAMEL-19183
             Project: Camel
          Issue Type: New Feature
          Components: camel-rest-openapi
            Reporter: James Netherton
            Assignee: James Netherton
             Fix For: 4.0-M3, 4.0


Many frameworks (springdoc-openapi, SmallRye OpenAPI etc) have an option to specify a default produces / consumes content type for Swagger / OpenAPI documentation.

It could be useful to have something similar in Camel and allow it to be overridable via the usual .consumes() & .produces() REST DSL options.

It would fix a slight quirk of how the OpenAPI v3 doc generation is done. If you specify an input body for a verb and omit consumes, then the body config never gets configured and rendered in the API docs (expected since consumes is mandatory when there's a body). But there's no hint in Camel that the consumes part was required. Thus having a default would allow it to always work and you get better dev feedback by being able to have the body content available via the Swagger UI.

I've seen from posts on stackoverflow.com and elsewhere, where the lack of a default has been a source of confusion for folks when they don't provide produces / consumes in their REST config, and wonder why the API docs are not rendered as expected. 




--
This message was sent by Atlassian Jira
(v8.20.10#820010)