问题描述
我正试图在Wildfly 20中使用smallrye-open-api(MicroProfile OpenAPI)。我在一个Wildfly实例上以独立模式部署了多个war文件(模块)。是否有可能用war文件指定应包含在开放api文档中? 我正在尝试,但遇到这样的警告
10:59:06,082 WARN [org.wildfly.extension.microprofile.openapi.smallrye] (MSC service thread 1-5) [] WFLYMPOAI0003: MicroProfile OpenAPI endpoint already registered for host 'default-host'. Skipping OpenAPI documentation of 'module-1.war'
对于我所有的模块。似乎Wildfly尝试在第一个遇到的模块上随机注册OpenAPI端点。
解决方法
找到了解决方案。在每个模块(war文件)中,您都应该添加文件
src/resources/META-INF/microprofile-config.properties
在此文件中,使用属性指定在其中可以找到特定战争的OpenAPI的唯一路径
mp.openapi.extensions.path=/myWarOpenapiPath
或者如果模块(war文件)不应包含在OpenAPI文档中,则只需添加属性
mp.openapi.extensions.enabled=false