最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

java - Unwanted "result" Value in @RequestMapping `produces` Attribute Generated by OpenAPI Generator - Stack

programmeradmin1浏览0评论

I'm using the OpenAPI Generator plugin for server stub generation based on a Swagger 2.0 specification. I’ve encountered an issue where the generated code contains an unwanted "result" value in the produces attribute of the @RequestMapping annotation in the Spring Boot server stub.

Issue:

In the generated code, I have the following @RequestMapping annotation:

@RequestMapping(
    method = RequestMethod.POST,
    value = "/users", 
    produces = { "application/json", "result" },
    consumes = { "application/json" }
)

As you can see, the produces attribute includes "result" as a media type, which should not be there. The produces attribute is intended to specify valid media types (like "application/json", "application/xml", etc.), but "result" seems to have been mistakenly added.

Example Swagger Spec (relevant part):

responses:
  200:
    description: Successful response
    schema:
      type: object
      properties:
        result:
          type: object
          properties:
            someData:
              type: string

What I've Tried:

  1. Reviewed the Swagger Spec: I've checked my Swagger 2.0 spec, and there's no reason for "result" to be in the produces field. The spec only defines response data, not media types like "result".
  2. Checked the Generated Code: The produces field in the generated @RequestMapping annotation is incorrectly including "result".
  3. Looked at the OpenAPI Generator Templates: I haven’t customized the templates yet, but I’m wondering if this might be necessary.

My Question:

  • Why is OpenAPI Generator adding "result" as a value in the produces attribute of the @RequestMapping annotation? Could it be related to the way the response body is defined in the Swagger 2.0 spec?
  • How can I fix this issue so that only the correct media types (like "application/json") appear in the produces field, and "result" is not added?
  • Should I customize the OpenAPI Generator templates to prevent this from happening, and if so, how would I do that?

Any guidance or solutions would be greatly appreciated!

与本文相关的文章

发布评论

评论列表(0)

  1. 暂无评论