У меня есть @RestController
с @RequestMapping("/v1/loja")
и метод, помеченный @GetMapping("/{code}")
. Помимо этого, контекстный путь - /loja
. Учитывая это, ожидаемое отображение равно /loja/v1/loja/{code}
, но пользовательский интерфейс показывает /loja/v1/{code}
, что приводит к неверному запросу.
chrome dev tools подтверждает, что пользовательский интерфейс вызывает неверную конечную точку: http://localhost:9103/loja/v1/2
Я использую Spring Fox Swagger с загрузкой Spring, Java 12 OpenJDK
зависимости:
implementation("io.springfox:springfox-swagger2:${springfoxSwaggerVersion}") {
exclude module: 'swagger-annotations'
exclude module: 'swagger-models'
}
implementation "io.springfox:springfox-swagger-ui:${springfoxSwaggerVersion}"
implementation "io.springfox:springfox-spring-webmvc:${springfoxSwaggerVersion}"
implementation "io.swagger:swagger-annotations:${swaggerVersion}"
implementation "io.swagger:swagger-models:${swaggerVersion}"
springfoxSwaggerVersion=3.0.0-SNAPSHOT
swaggerVersion=1.5.24
Это ошибка или может быть неправильная / отсутствующая конфигурация или что-то вроде этого?
ОБНОВЛЕНИЕ
Я решил добавить что-то еще к пути на уровне контроллера, и похоже, что сваггер все испортил.
Я изменил отображение запроса на @RequestMapping("/v1/lojaa")
, и в результате было /loja/v1a/{code}
ОБНОВЛЕНИЕ 2
@RestController
@RequestMapping("/v1/loja")
@RequiredArgsConstructor
@Api
public class StoreController {
@GetMapping("/{codigo_loja}")
@ApiOperation(value = "get store by code", produces = MediaType.APPLICATION_JSON_VALUE)
@ApiResponses({
@ApiResponse(code = 404, message = "Store not found"),
@ApiResponse(code = 200, message = "Store found")
})
public ResponseEntity<StoreResponse> getStoreByCode(@PathVariable("codigo_loja") final Integer code) {
... some logic ...
}
}