Openapi YAML неверен, не может генерировать клиентские заглушки

Я оцениваю Quarkus как серверную часть, доступ к которой осуществляется через интерфейс angular. Я хотел использовать данные openapi, предоставленные Quarkus через http://localhost:8080/openapi, и сгенерировать с помощью инструментов openapi-generator заглушку клиента с typecript-angular.

В качестве первого шага я использовал руководство Quarkus Openapi: https://quarkus.io/guides/openapi-swaggerui Но после запуска немодифицированного примера и получения Openapi YAML-данных через http://localhost:8080/openapi я заметил, что сгенерированные данные неверны, и генератор openapi не может создать клиента из-за ошибки переполнения стека.

Проблема: ссылка на себя в Openapi-data для SetFruit-Definition (последняя строка):

openapi: 3.0.1
info:
  title: Generated API
  version: "1.0"
paths:
  /fruits:
    get:
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SetFruit'
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Fruit'
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SetFruit'
    delete:
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Fruit'
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SetFruit'
components:
  schemas:
    Fruit:
      type: object
      properties:
        description:
          type: string
        name:
          type: string
    SetFruit:
      $ref: '#/components/schemas/SetFruit'

Это известная проблема или с моей стороны возникло недоразумение. Есть ли способ обойти эту проблему?

Большое спасибо!

2 ответа

Эта проблема будет решена в Quarkus 1.3.0.CR1, который выйдет на следующей неделе.

Это определенно не должно генерировать самоопределение! Не могли бы вы поднять здесь вопрос:

https://github.com/smallrye/smallrye-open-api/issues

Эта библиотека является реализацией поддержки Quarkus этой функции. Если бы вы могли включить проект репродуктора, это было бы очень полезно. Или, по крайней мере, дайте нам некоторую информацию оFruit а также SetFruit классы java.

Другие вопросы по тегам