Swagger Tutorials & Notes

Swagger Tutorials & Notes

What is the URL to open Swagger UI ?


What is the URL to view the list of API’s as JSON in Swagger ?


How to disable Swagger related URL’s in Spring Security ?

In your WebSecurityConfig class make sure to skip the below endpoints/urls,

public void configure(WebSecurity web) throws Exception {
web.ignoring().antMatchers("/actuator/**", "/v2/api-docs", "/webjars/**", "/swagger-resources/**","/swagger-ui.html");		

In very few case it still throws the exceptions then try “**/swagger-resources/**” instead of “/swagger-resources/**”

How to disable Swagger UI in Production ?

Swagger UI can be enabled or disabled based on the profile. Make sure you have separate swagger configuration class and annotated with


Now only for the profile dev it displays the Swagger UI.

Those who don’t know about the swagger config class below class is shared,

package com.ngdeveloper.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Profile;

import com.google.common.base.Predicates;

import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

public class SwaggerConfig {
	public Docket api() {
	    return new Docket(DocumentationType.SWAGGER_2).select().apis(Predicates.not(RequestHandlerSelectors.basePackage("org.springframework.boot"))).apis(RequestHandlerSelectors.any()).paths(PathSelectors.any()).build().apiInfo(apiInfo());

	private ApiInfo apiInfo() {
	     return new ApiInfoBuilder().title("NgDeveloper's API Docs").description("Explore NgDeveloper's API's and its uses").version("1.0").termsOfServiceUrl("http://ngdeveloper.com/").build();

163 total views, 8 views today

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.