У меня есть параметр @ModelAttribute в контроллере для get-запросов и springfox-swagger для генерации документов.
Когда я использовал java, он работал хорошо, и этот параметр имел тип «query» в swagger, но после перемещения моего контроллера в kotlin тип параметра изменился на «body». Как установить тип этого параметра на «запрос»?
Используемые версии Swagger:
springfox-swagger2: 2.7.0
чванство-аннотации: 1.5.13
Я пытался использовать аннотацию @ApiImplicitParam, но она не работает:
@ApiImplicitParams(value = [
ApiImplicitParam(name="paramName", paramType = "query", dataTypeClass = ParamClass::class)
])
@GetMapping("/")
fun get(@Valid @ModelAttribute(name = "paramName") paramName: ParamClass): String {...}
Рабочий код в Java:
@GetMapping(value = "/")
public String get(@Valid @ModelAttribute ParamClass paramName) {...}
Ожидаемые параметры в swagger json:
"parameters" : [
{
"in" : "query",
"name" : "field1_in_ParamClass",
"type" : "string"
"required" : false,
},
{
"in" : "query",
"name" : "field2_in_ParamClass",
"type" : "string"
"required" : false,
},...
Фактические параметры в swagger json:
"parameters" : [
{
"in" : "body",
"name" : "paramName",
"required" : false,
"schema" : {
"$ref" : "#/definitions/ParamClass"
}
},...