Problème Swagger-gen / Spring boot

litouams -  
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

Je travail sur un petit projet Java/Angular

je me retrouve face une erreur que je n'ai pas pu résoudre.


je déclare mes api en utilisent ce code

@DeleteMapping(value = APP_ROOT + "/boutiques/delete/{id}")
 @ApiOperation(value = "Supprimer une boutique", notes = "cette methode permet de supprimer une boutique par son ID", response = BoutiqueDto.class, tags = "boutiques")
 @ApiResponses(value = {
         @ApiResponse(code = 200, message = "La boutique a ete supprime")
 })
 void delete(@PathVariable("id") Integer id);


Quant j'utilise Postman pour tester tout fonctionne a merveille

mais lorsque je genre mon swagger.json les variable ne sont pas déclaré

"/plateformedecommerceelectronique/v1/boutiques/delete/{id}" : {
  "delete" : {
    "tags" : [ "boutiques" ],
    "summary" : "Supprimer une boutique",
    "description" : "cette methode permet de supprimer une boutique par son ID",
    "operationId" : "delete",
    "responses" : {
      "200" : {
        "description" : "La boutique a ete supprime",
        "schema" : {
          "$ref" : "#/definitions/BoutiqueDto"
        }
      }
    }
  }
},



mais si je déclare mes variable avec un nom aléatoire genre "AAAA" j'obtient un bon swagger.json

"/plateformedecommerceelectronique/v1/boutiques/delete/{AAAAAAA}" : {
      "delete" : {
        "tags" : [ "boutiques" ],
        "summary" : "Supprimer une boutique",
        "description" : "cette methode permet de supprimer une boutique par son ID",
        "operationId" : "delete",
        "parameters" : [ {
          "name" : "AAAAAAA",
          "in" : "path",
          "required" : true,
          "type" : "integer",
          "format" : "int32"
        } ],
        "responses" : {
          "200" : {
            "description" : "La boutique a ete supprime",
            "schema" : {
              "$ref" : "#/definitions/BoutiqueDto"
            }
          }
        }
      }
    },


Pouvez-vous s'il vous plaît m'aider à comprendre pour quoi dans le 1re cas ça ne fonctionne pas alors que dans la 2eme tout va bien



Meci infiniment
A voir également:

1 réponse

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Bonjour,

Il te manque @ApiParam pour décrire le paramètre dans Swagger.

Voir https://www.baeldung.com/swagger-apiparam-vs-apimodelproperty
0