Add spring-boot-parent and fix swagger configuration for self deploy

This commit is contained in:
Konstantinos Triantafyllou 2022-10-07 18:02:22 +03:00
parent a9e7ea5d2c
commit 319b384eae
2 changed files with 27 additions and 38 deletions

45
pom.xml
View File

@ -3,22 +3,17 @@
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>eu.dnetlib</groupId>
<artifactId>uoa-global-parent</artifactId>
<version>1.0.1</version>
<artifactId>uoa-spring-boot-parent</artifactId>
<version>1.0.0</version>
</parent>
<artifactId>dnet-role-management</artifactId>
<version>1.0.3-SNAPSHOT</version>
<packaging>war</packaging>
<name>dnet-role-management</name>
<description>DNET Role Management API. Integrated with AAI Registry Service</description>
<properties>
<java.version>1.8</java.version>
</properties>
<scm>
<url>https://code-repo.d4science.org/MaDgIK/dnet-role-management</url>
<connection>scm:git:gitea@code-repo.d4science.org:MaDgIK/dnet-role-management.git</connection>
<developerConnection>scm:git:gitea@code-repo.d4science.org:MaDgIK/dnet-role-management.git</developerConnection>
<tag>dnet-role-management-1.0.0</tag>
<tag>HEAD</tag>
</scm>
<dependencyManagement>
<dependencies>
@ -32,27 +27,7 @@
</dependencies>
</dependencyManagement>
<dependencies>
<!-- Spring Boot -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!-- Spring Boot Security -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
@ -79,23 +54,17 @@
</exclusion>
</exclusions>
</dependency>
<!-- Json -->
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.6.2</version>
</dependency>
<!--swagger-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.7.0</version>
<version>${swagger-version}</version>
</dependency>
<!--swagger official ui-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.7.0</version>
<version>${swagger-version}</version>
</dependency>
</dependencies>
<build>
@ -109,8 +78,10 @@
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${spring-boot-version}</version>
<configuration>
<mainClass>eu.dnetlib.dnetrolemanagement.DnetRoleManagementApplication</mainClass>
<executable>true</executable>
</configuration>
<executions>
<execution>

View File

@ -5,6 +5,9 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Profile;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.ViewControllerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.ParameterBuilder;
import springfox.documentation.builders.PathSelectors;
@ -25,7 +28,7 @@ import java.util.List;
@Configuration
@Profile({"swagger"})
@EnableSwagger2
public class SwaggerConfig {
public class SwaggerConfig extends WebMvcConfigurerAdapter {
private final APIProperties apiProperties;
@ -64,5 +67,20 @@ public class SwaggerConfig {
.build();
return Collections.singletonList(authTokenHeader);
}
@Override
public void addViewControllers(ViewControllerRegistry registry) {
registry.addRedirectViewController("/v2/api-docs", "/v2/api-docs");
registry.addRedirectViewController("/swagger-resources/configuration/ui", "/swagger-resources/configuration/ui");
registry.addRedirectViewController("/swagger-resources/configuration/security", "/swagger-resources/configuration/security");
registry.addRedirectViewController("/swagger-resources", "/swagger-resources");
}
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/swagger-ui.html**").addResourceLocations("classpath:/META-INF/resources/swagger-ui.html");
registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");
}
}