I\'m working on a spring boot application using swagger to generate docs for my API ,I\'m using Spring data rest to generate the Api but when I run the app I get the swagger
Verify your package & add
@Configuration
@EnableSwagger2
to the spring boot configuration file
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2).select()
.apis(RequestHandlerSelectors.basePackage("your.package.name")).paths(PathSelectors.any()).build()
.apiInfo(apiEndPointInfo());
}
only those dependencies are required
io.springfox
springfox-swagger2
2.9.2
io.springfox
springfox-swagger-ui
2.9.2
your final config file should looks like this
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ViewResolverRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
@SpringBootApplication
@Configuration
@EnableSwagger2
public class TestappApplication implements WebMvcConfigurer {
private static final String PREFIX = "/WEB-INF/views/";
private static final String SUFFIX = ".jsp";
public static void main(String[] args) {
SpringApplication.run(TestappApplication.class, args);
}
@Override
public void configureViewResolvers(ViewResolverRegistry registry) {
registry.jsp(PREFIX, SUFFIX);
}
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2).select()
.apis(RequestHandlerSelectors.basePackage("your.package.scan.to.swagger.annotations")).paths(PathSelectors.any()).build()
.apiInfo(apiEndPointInfo());
}
public ApiInfo apiEndPointInfo() {
return new ApiInfoBuilder().title("Spring Boot Rest API").description("user Management API")
.contact(new Contact("zouhair kasmi", "website.com/", "myemail@gmail.com"))
.license("Apache 2.0").licenseUrl("http://www.apache.org/licenses/LICENSE-2.0.html")
.version("0.0.1-SNAPSHOT").build();
}
}