【问题标题】:How to configure springdoc ui without mapping the root path?如何在不映射根路径的情况下配置springdoc ui?
【发布时间】:2021-10-13 06:55:44
【问题描述】:

我正在尝试在 spring web 应用程序(非 springboot)中配置 springdoc-openapi-ui。在我的应用程序中,我有一个映射到“/”的控制器,它与 Springdoc SwaggerUiHome 控制器冲突。我收到类似这样的错误:

java.lang.IllegalStateException:不明确的映射。无法将 'swaggerUiHome' 方法 'org.springdoc.webmvc.ui.SwaggerUiHome#index() 映射到 {GET [/]}:已经映射了 'loginLogoutController' bean 方法 com.company.MyController#method()。

如果我禁用映射到“/”的控制器,那么会按预期显示招摇的 UI。但是,我需要让我的控制器运行才能让我的网络应用程序正常工作。 即使我设置了“springdoc.swagger-ui.use-root-path=false”(无论如何都应该是默认设置),它仍然会导致不明确的映射错误。

有没有办法解决这个问题?有什么方法可以禁用 SwaggerUiHome.index() 到“/”的默认映射?

【问题讨论】:

  • 你能分享一下你对 Springdoc 的确切配置吗?包括您可能已声明集成 Springdoc 的 bean

标签: java swagger-ui springdoc springdoc-openapi-ui


【解决方案1】:

SwaggerUiHome 仅在您定义时调用:springdoc.swagger-ui.use-root-path=true

要禁用它:springdoc.swagger-ui.use-root-path=false

注意swagger-ui的默认路径不是根路径,而是:http://server:port/context-path/swagger-ui.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多