问题描述
我正在使用TomEE微型配置文件,并以此方式定义了我的其余应用程序路径:
@ApplicationPath("api")
public class RestConfiguration extends Application {
}
部署应用程序后,tomee日志将显示对生成的前端资源的访问URL:
Service URI: http://localhost:8080/apI/Openapi-ui/
访问URL时,在swagger-ui网页中收到以下消息:
如果我将应用程序路径更改为空:
@ApplicationPath("")
那么,应该怎么做才能使其在ApplicationPath批注中添加“ api”?
尝试使用“ / api”,但也不起作用。
解决方法
我在这里使用Tomee-8.0.4进行了测试,假设您使用的是JAR,请按照配置进行操作。
在pom.xml中使用依赖项:
<dependency>
<groupId>org.microprofile-ext.openapi-ext</groupId>
<artifactId>openapi-ui</artifactId>
<version>1.1.3</version>
</dependency>
<build>
<finalName>tomee-demo</finalName>
<plugins>
<plugin>
<groupId>org.apache.tomee.maven</groupId>
<artifactId>tomee-maven-plugin</artifactId>
<version>${tomee.version}</version>
<executions>
<execution>
<id>executable-jar</id>
<phase>package</phase>
<goals>
<goal>exec</goal>
</goals>
</execution>
</executions>
<configuration>
<context>ROOT</context>
<tomeeClassifier>microprofile</tomeeClassifier>
</configuration>
</plugin>
</plugins>
</build>
在 microprofile-config.properties 中使用:
mp.openapi.servers=http://localhost:8080/api
openapi.ui.yamlUrl=/api/openapi
openapi.ui.serverVisibility=visible
然后再次运行您的项目。
参考: https://github.com/microprofile-extensions/openapi-ext/tree/master/openapi-ui