I have configured Swagger in my Spring boot application, the spring boot application has 2 controllers, casesController and AttachmentController, I want all the endpoints from my attachment controller appear after the case controller endpoints, but swagger is doing the opposite.
my code looks as follow:
Configuration file:
@Configuration
class OpenApiConfig(
@Value("\${springdoc.info.title}") val title: String,
@Value("\${springdoc.info.description}") val infoDescription: String,
@Value("\${springdoc.info.version}") val version: String,
@Value("\${springdoc.info.license.name}") val licenseName: String,
@Value("\${springdoc.info.license.url}") val licenseUrl: String,
@Value("\${springdoc.info.contact.email}") val email: String,
@Value("\${springdoc.server.url}") val url: String,
@Value("\${springdoc.server.description}") val description: String
) {
@Bean
fun customOpenAPIConfig(): OpenAPI {
return OpenAPI()
.components(
Components()
)
.info(
Info().title(title).description(infoDescription).version(version)
.license(License().name(licenseName).url(licenseUrl))
.contact(Contact().email(email))
)
.servers(listOf(Server().url(url).description(description)))
.tags(listOf(Tag()))
}
}
AttachmentController:
@RestController
@RequestMapping("/cases/{id}/attachments")
lass AttachmentController(private val caseManagementService: CaseManagementService) {
@Operation(
summary = "Add attachment",
tags = ["attachment"],
description = "Add attachment to a case"
)
@PostMapping()
@ResponseStatus(HttpStatus.CREATED)
fun addAttachment(@RequestBody attachmentRequest: AttachmentRequestDto, @PathVariable id: String, @RequestHeader(value = "X-API-KEY") xApiKey: String): Mono<AttachmentResponseDto> {
....
}
CaseController:
@RestController
@RequestMapping("/cases")
class CaseController(private val caseManagementService: CaseManagementService) {
@Operation(
summary = "Create case",
tags = ["case"],
description = "Create case"
)
@PostMapping()
@ResponseStatus(HttpStatus.CREATED)
fun createCase(@RequestBody caseRequest: CaseRequestDto, @RequestHeader(value = "X-API-KEY") xApiKey: String): Mono<CaseResponseDto> {
....
}