diff --git a/dmp-backend/pom.xml b/dmp-backend/pom.xml index b9a7f248a..3e400ccc2 100644 --- a/dmp-backend/pom.xml +++ b/dmp-backend/pom.xml @@ -7,6 +7,7 @@ 0.0.1-SNAPSHOT war + 1.19.0 1.19.0 @@ -35,7 +36,6 @@ - @@ -250,11 +250,17 @@ - + com.google.apis google-api-services-oauth2 v2-rev75-1.19.0 - + + + com.google.guava + guava-jdk5 + + + com.google.http-client google-http-client-jackson2 @@ -294,6 +300,26 @@ 23.0 + + + + io.springfox + springfox-swagger2 + 2.7.0 + + + + + + + + + + io.springfox + springfox-swagger-ui + 2.7.0 + + @@ -335,7 +361,7 @@ - + ${project.artifactId} diff --git a/dmp-backend/src/main/java/swagger/SwaggerConfig.java b/dmp-backend/src/main/java/swagger/SwaggerConfig.java new file mode 100644 index 000000000..3eb096970 --- /dev/null +++ b/dmp-backend/src/main/java/swagger/SwaggerConfig.java @@ -0,0 +1,39 @@ +package swagger; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.web.servlet.config.annotation.EnableWebMvc; +import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter; + +import springfox.documentation.builders.PathSelectors; +import springfox.documentation.builders.RequestHandlerSelectors; +import springfox.documentation.spi.DocumentationType; +import springfox.documentation.spring.web.plugins.Docket; +import springfox.documentation.swagger2.annotations.EnableSwagger2; + +@Configuration +@EnableSwagger2 +@EnableWebMvc +public class SwaggerConfig extends WebMvcConfigurerAdapter { + @Bean + public Docket api() { + System.out.println("Initializing Swagger 2..."); + return new Docket(DocumentationType.SWAGGER_2) + .select() + .apis(RequestHandlerSelectors.any()) + .paths(PathSelectors.any()) + .build(); + } + + + @Override + public void addResourceHandlers(ResourceHandlerRegistry registry) { + System.out.println("Overriding resource handlers"); + registry.addResourceHandler("swagger-ui.html") + .addResourceLocations("classpath*:/META-INF/resources/"); + registry.addResourceHandler("/webjars/**") + .addResourceLocations("classpath*:/META-INF/resources/webjars/"); + } + +} diff --git a/dmp-backend/src/main/webapp/WEB-INF/swagger-servlet.xml b/dmp-backend/src/main/webapp/WEB-INF/swagger-servlet.xml new file mode 100644 index 000000000..894a48697 --- /dev/null +++ b/dmp-backend/src/main/webapp/WEB-INF/swagger-servlet.xml @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/dmp-backend/src/main/webapp/WEB-INF/web.xml b/dmp-backend/src/main/webapp/WEB-INF/web.xml index 8cc95c48c..d956c56b2 100644 --- a/dmp-backend/src/main/webapp/WEB-INF/web.xml +++ b/dmp-backend/src/main/webapp/WEB-INF/web.xml @@ -57,6 +57,33 @@ org.springframework.web.context.ContextLoaderListener + + + + swagger + org.springframework.web.servlet.DispatcherServlet + + + + + 1 + + + + default + /swagger-ui.html + + + + swagger + /* + + + + + + + @@ -104,4 +131,5 @@ + \ No newline at end of file