Swagger-UI не показывает XML атрибутов в примере запроса - PullRequest
0 голосов
/ 14 февраля 2020

Я пытался реализовать swagger с моим приложением весенней загрузки, но у меня возникла проблема с примером запроса, который присутствует, когда мы пытаемся выполнить вызов API.

Идеальный сценарий: Swagger должен показать клиенту подробный объект как введите описание изображения здесь

Проблема: атрибуты для тега сведений о клиенте или любого другого тега не отображаются введите описание изображения здесь

И чванство настроено как:

package com.monkeymedia.micros.config;

import java.util.Arrays;
import java.util.Collections;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import com.google.common.collect.Lists;

import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@Configuration
@EnableSwagger2
public class SwaggerConfig {
   @Bean
   public Docket api() {
       return new Docket(DocumentationType.SWAGGER_2)
               .select()
               .apis(RequestHandlerSelectors.basePackage("com.monkeymedia.micros.controller"))
               .paths(PathSelectors.ant("/**/**"))
               .build()
               .apiInfo(apiDetails());
   }

   private ApiInfo apiDetails(){
       return new ApiInfo(
               "Micros Integration",
               "Micors Integration is used by Monkey Media partners to submit orders.",
               "2.0",
               "Not Free to use",
               new springfox.documentation.service.Contact("Monkey Group","https://monkeymediasoftware.com","test@test.com"),
               "API License",
               "https://monkeymediasoftware.com",
               Collections.emptyList());
   }
}

, а модель с подробной информацией о клиенте закодирована так:

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;

import lombok.Getter;
import lombok.Setter;

@Getter
@Setter
@JsonIgnoreProperties(ignoreUnknown = true)
public class CustomerDetail {

@JacksonXmlProperty(localName = "fname", isAttribute = true)
protected String fname;

@JacksonXmlProperty(localName = "phone", isAttribute = true)
protected String phone;

@JacksonXmlProperty(localName = "lname", isAttribute = true)
protected String lname;

@JacksonXmlProperty(localName = "client-fname", isAttribute = true)
protected String clientFname;

@JacksonXmlProperty(localName = "client-lname", isAttribute = true)
protected String clientLname;

@JacksonXmlProperty(localName = "email", isAttribute = true)
protected String email;
}

Требование: образец модели на чучеле должен быть таким же, как идеальная модель, указанная выше.

...