Как я могу решить проблему Swagger-UI в Spring Boot 3?JAVA

Программисты JAVA общаются здесь
Anonymous
Как я могу решить проблему Swagger-UI в Spring Boot 3?

Сообщение Anonymous »

Я вижу «http: // localhost: 8080/v3/api-docs», но я не вижу «http: // localhost: 8080/swagger-ui.html». Я попробовал несколько разных URL, но это не сработало. Я встречаюсь 404 (страница ошибки WhiteLabel). < /P>
Соответствующий код ниже. Я думаю, что я использовал правильные версии. Я не понимаю, почему он не работает.
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0

org.springframework.boot
spring-boot-starter-parent
3.3.0


com.nahrok
demo
0.0.1-SNAPSHOT
demo
demo


17



org.springframework.boot
spring-boot-starter



com.h2database
h2
runtime


org.springframework.boot
spring-boot-starter-test
test


org.springframework.boot
spring-boot-starter-web


org.springframework.boot
spring-boot-starter-data-jpa


org.projectlombok
lombok


org.mapstruct
mapstruct
1.6.0.RC1


org.springdoc
springdoc-openapi-starter-webmvc-ui
2.6.0






org.apache.maven.plugins
maven-compiler-plugin
3.13.0

11
11


org.projectlombok
lombok
1.18.34


org.mapstruct
mapstruct-processor
1.6.0


org.projectlombok
lombok-mapstruct-binding
0.2.0









application.properties:
spring.application.name=demo
server.port=8080

spring.datasource.url=jdbc:h2:file:~/Documents/workspace/db/tour
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=
spring.jpa.hibernate.ddl-auto=update
spring.jpa.database-platform=org.hibernate.dialect.H2Dialect

Пример RestController Class :
package com.nahrok.demo.controller;

import com.nahrok.demo.model.station.StationCreateRequest;
import com.nahrok.demo.model.station.StationDetail;
import com.nahrok.demo.service.IStationService;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@RequestMapping("station")
public class StationController {
private final IStationService stationService;

public StationController(IStationService stationService) {
this.stationService = stationService;
}

@PostMapping("/create")
public Long create(@RequestBody StationCreateRequest request) {
return stationService.create(request);
}

@GetMapping
public StationDetail stationDetail(@RequestParam("stationId") Long stationId) {
return stationService.getStation(stationId);
}

@GetMapping("/stations")
public List stations() {
return stationService.getStations();
}
}

класс приложений Pring Boot :
package com.nahrok.demo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class DemoApplication {

public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}

}

у меня есть только один класс конфигурации, и это :
package com.nahrok.demo.config;

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@Configuration
public class WebConfig implements WebMvcConfigurer {

@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowedOrigins("http://localhost:3000")
.allowedMethods("GET", "POST", "PUT", "DELETE")
.allowedHeaders("*");
}
}


, а последний - вывод консоли :
2024-09-24T06:16:29.157+03:00 INFO 23908 --- [demo] [ main] com.nahrok.demo.DemoApplication : Starting DemoApplication using Java 17.0.12 with PID 23908 (USERUSERUSER\target\classes started by user in USERUSERUSER\IdeaProjects\demo)
2024-09-24T06:16:29.158+03:00 INFO 23908 --- [demo] [ main] com.nahrok.demo.DemoApplication : No active profile set, falling back to 1 default profile: "default"
2024-09-24T06:16:29.492+03:00 INFO 23908 --- [demo] [ main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode.
2024-09-24T06:16:29.533+03:00 INFO 23908 --- [demo] [ main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 37 ms. Found 8 JPA repository interfaces.
2024-09-24T06:16:29.755+03:00 INFO 23908 --- [demo] [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port 8080 (http)
2024-09-24T06:16:29.760+03:00 INFO 23908 --- [demo] [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat]
2024-09-24T06:16:29.761+03:00 INFO 23908 --- [demo] [ main] o.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/10.1.24]
2024-09-24T06:16:29.789+03:00 INFO 23908 --- [demo] [ main] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2024-09-24T06:16:29.789+03:00 INFO 23908 --- [demo] [ main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 608 ms
2024-09-24T06:16:29.855+03:00 INFO 23908 --- [demo] [ main] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default]
2024-09-24T06:16:29.883+03:00 INFO 23908 --- [demo] [ main] org.hibernate.Version : HHH000412: Hibernate ORM core version 6.5.2.Final
2024-09-24T06:16:29.899+03:00 INFO 23908 --- [demo] [ main] o.h.c.internal.RegionFactoryInitiator : HHH000026: Second-level cache disabled
2024-09-24T06:16:30.047+03:00 INFO 23908 --- [demo] [ main] o.s.o.j.p.SpringPersistenceUnitInfo : No LoadTimeWeaver setup: ignoring JPA class transformer
2024-09-24T06:16:30.060+03:00 INFO 23908 --- [demo] [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting...
2024-09-24T06:16:30.165+03:00 INFO 23908 --- [demo] [ main] com.zaxxer.hikari.pool.HikariPool : HikariPool-1 - Added connection conn0: url=jdbc:h2:file:~/Documents/workspace/db/tour user=SA
2024-09-24T06:16:30.166+03:00 INFO 23908 --- [demo] [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed.
2024-09-24T06:16:30.177+03:00 WARN 23908 --- [demo] [ main] org.hibernate.orm.deprecation : HHH90000025: H2Dialect does not need to be specified explicitly using 'hibernate.dialect' (remove the property setting and it will be selected by default)
2024-09-24T06:16:30.675+03:00 INFO 23908 --- [demo] [ main] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration)
2024-09-24T06:16:30.697+03:00 INFO 23908 --- [demo] [ main] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default'
2024-09-24T06:16:30.821+03:00 INFO 23908 --- [demo] [ main] o.s.d.j.r.query.QueryEnhancerFactory : Hibernate is in classpath; If applicable, HQL parser will be used.
2024-09-24T06:16:31.046+03:00 WARN 23908 --- [demo] [ main] JpaBaseConfiguration$JpaWebConfiguration : spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning
2024-09-24T06:16:31.263+03:00 INFO 23908 --- [demo] [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port 8080 (http) with context path '/'
2024-09-24T06:16:31.268+03:00 INFO 23908 --- [demo] [ main] com.nahrok.demo.DemoApplication : Started DemoApplication in 2.293 seconds (process running for 2.561)


Подробнее здесь: https://stackoverflow.com/questions/790 ... ing-boot-3

Вернуться в «JAVA»