Browse Source

add swagger-ui on /swagger-ui.html

Zhenya Taran 5 years ago
parent
commit
ef39834651

+ 5 - 0
kafka-ui-api/pom.xml

@@ -39,6 +39,11 @@
             <artifactId>kafka-ui-contract</artifactId>
             <artifactId>kafka-ui-contract</artifactId>
             <version>${project.version}</version>
             <version>${project.version}</version>
         </dependency>
         </dependency>
+        <dependency>
+            <groupId>org.springdoc</groupId>
+            <artifactId>springdoc-openapi-webflux-ui</artifactId>
+            <version>${springdoc-openapi-webflux-ui.version}</version>
+        </dependency>
         <dependency>
         <dependency>
             <groupId>org.apache.kafka</groupId>
             <groupId>org.apache.kafka</groupId>
             <artifactId>kafka-clients</artifactId>
             <artifactId>kafka-clients</artifactId>

+ 2 - 3
kafka-ui-api/src/main/java/com/provectus/kafka/ui/KafkaMetricsApplication.java → kafka-ui-api/src/main/java/com/provectus/kafka/ui/KafkaUiApplication.java

@@ -8,10 +8,9 @@ import org.springframework.scheduling.annotation.EnableScheduling;
 @SpringBootApplication
 @SpringBootApplication
 @EnableScheduling
 @EnableScheduling
 @EnableAsync
 @EnableAsync
-public class KafkaMetricsApplication {
+public class KafkaUiApplication {
 
 
 	public static void main(String[] args) {
 	public static void main(String[] args) {
-		SpringApplication.run(KafkaMetricsApplication.class, args);
+		SpringApplication.run(KafkaUiApplication.class, args);
 	}
 	}
-
 }
 }

+ 12 - 0
kafka-ui-api/src/main/java/com/provectus/kafka/ui/rest/config/CorsGlobalConfiguration.java

@@ -4,7 +4,11 @@ import org.springframework.context.annotation.Configuration;
 import org.springframework.context.annotation.Profile;
 import org.springframework.context.annotation.Profile;
 import org.springframework.web.reactive.config.CorsRegistry;
 import org.springframework.web.reactive.config.CorsRegistry;
 import org.springframework.web.reactive.config.EnableWebFlux;
 import org.springframework.web.reactive.config.EnableWebFlux;
+import org.springframework.web.reactive.config.ResourceHandlerRegistry;
 import org.springframework.web.reactive.config.WebFluxConfigurer;
 import org.springframework.web.reactive.config.WebFluxConfigurer;
+import org.springframework.web.reactive.resource.WebJarsResourceResolver;
+
+import static org.springdoc.core.Constants.CLASSPATH_RESOURCE_LOCATION;
 
 
 @Configuration
 @Configuration
 @EnableWebFlux
 @EnableWebFlux
@@ -19,4 +23,12 @@ public class CorsGlobalConfiguration implements WebFluxConfigurer {
                 .allowedHeaders("*")
                 .allowedHeaders("*")
                 .allowCredentials(true);
                 .allowCredentials(true);
     }
     }
+
+    @Override
+    public void addResourceHandlers(ResourceHandlerRegistry registry) {
+        registry.addResourceHandler("/webjars/**")
+                .addResourceLocations(CLASSPATH_RESOURCE_LOCATION+"/webjars/")
+                .resourceChain(true)
+                .addResolver(new WebJarsResourceResolver());
+    }
 }
 }

+ 1 - 0
pom.xml

@@ -26,6 +26,7 @@
 		<maven-compiler-plugin.version>3.5.1</maven-compiler-plugin.version>
 		<maven-compiler-plugin.version>3.5.1</maven-compiler-plugin.version>
 		<openapi-generator-maven-plugin.version>4.2.2</openapi-generator-maven-plugin.version>
 		<openapi-generator-maven-plugin.version>4.2.2</openapi-generator-maven-plugin.version>
 		<swagger-annotations.version>1.6.0</swagger-annotations.version>
 		<swagger-annotations.version>1.6.0</swagger-annotations.version>
+		<springdoc-openapi-webflux-ui.version>1.2.32</springdoc-openapi-webflux-ui.version>
 	</properties>
 	</properties>
 
 
 	<groupId>com.provectus</groupId>
 	<groupId>com.provectus</groupId>