I'm using swagger2 in my spring boot project. It's working well, but I need to exclude the basic-error-controller
from the api. Currently I'm using the following code using regex. It's working but is there any perfect way to do this.
CODE :
@Bean
public Docket demoApi() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.any())
.paths(PathSelectors.regex('(?!/error.*).*'))
.build()
}
After searching in google I got the solution from one issue in GitHub, [question] How to exclude the basic-error-controller from being added to the swagger description?. It can be done using Predicates.not()
.
Code looks like as follows after using Predicates.not()
.
@Bean
public Docket demoApi() {
return new Docket(DocumentationType.SWAGGER_2)//<3>
.select()//<4>
.apis(RequestHandlerSelectors.any())//<5>
.paths(Predicates.not(PathSelectors.regex("/error.*")))//<6>, regex must be in double quotes.
.build()
}