Java tutorial
package com.aribanilia.rest.util; import com.google.common.base.Predicates; import org.springframework.context.annotation.Bean; import org.springframework.stereotype.Component; import springfox.documentation.builders.ParameterBuilder; import springfox.documentation.builders.PathSelectors; import springfox.documentation.builders.RequestHandlerSelectors; import springfox.documentation.schema.ModelRef; import springfox.documentation.service.ApiInfo; import springfox.documentation.service.ApiKey; import springfox.documentation.service.Contact; import springfox.documentation.spi.DocumentationType; import springfox.documentation.spring.web.plugins.Docket; import springfox.documentation.swagger.web.ApiKeyVehicle; import springfox.documentation.swagger.web.SecurityConfiguration; import springfox.documentation.swagger2.annotations.EnableSwagger2; import java.util.Collections; /** * Created by ivan_j4u on 5/29/2017. */ @Component @EnableSwagger2 public class SwaggerConfig { @Bean public Docket api() { return new Docket(DocumentationType.SWAGGER_2).select().apis(RequestHandlerSelectors.any()) .paths(Predicates.not(PathSelectors.regex("/error"))).build().apiInfo(apiInfo()) .securitySchemes(Collections.singletonList(apiKey())) .globalOperationParameters(Collections .singletonList(new ParameterBuilder().name("Authorization").description("Token Oauth 2") .modelRef(new ModelRef("string")).parameterType("header").build())); } @Bean public SecurityConfiguration security() { return new SecurityConfiguration(null, null, null, null, "Bearer access_token", ApiKeyVehicle.HEADER, "Authorization", ","); } private ApiKey apiKey() { return new ApiKey("mykey", "api_key", "header"); } private ApiInfo apiInfo() { ApiInfo apiInfo = new ApiInfo("i-Rest", "Rest Server with Oauth 2 and MongoDB Services", "1.0", "Copyright : ", new Contact("Ivan Aribanilia", "https://www.facebook.com/ivanj4u", "ivan.aribanilia@gmail.com"), "Apache License 2.0", "https://www.apache.org/licenses/LICENSE-2.0"); return apiInfo; } }