我与 MicroProfile OpenApi 注释发生了争执。当我在 Payara 或 OpenLiberty 上运行它时,我可以在http://localhost:8080/openapi访问 OpenApi 文档,如规范中所述。
这不适用于 WildFly 18 和 19 Beta 1,即使它声称支持 MP OpenApi。我想 TCK 会检查这一点,所以也许我做错了什么。
我与 MicroProfile OpenApi 注释发生了争执。当我在 Payara 或 OpenLiberty 上运行它时,我可以在http://localhost:8080/openapi访问 OpenApi 文档,如规范中所述。
这不适用于 WildFly 18 和 19 Beta 1,即使它声称支持 MP OpenApi。我想 TCK 会检查这一点,所以也许我做错了什么。
看起来 OpenAPI 支持是通过WildFly 19 Beta 1添加的。不幸的是,wildfly.org 页面上的当前文档适用于 WildFly 18,并且不包含包含 OpenAPI 的管理指南。
不过,您可以在 GitHub 上.adoc
找到OpenAPI 支持文件。根据这个文件的历史,它是在 2019 年 12 月添加的(这可能是我还没有进入主页文档的原因)。
OpenAPI 的当前文档声称是默认standalone-microprofile.xml
配置的一部分,该文档可在http://localhost:8080获得。
如果您不使用此配置运行,您可以使用以下命令启用 OpenAPI 子系统(我使用 WildFly 19 Beta 1 进行了测试):
➜ bin ./jboss-cli.sh
You are disconnected at the moment. Type 'connect' to connect to the server or 'help' for the list of supported commands.
[disconnected /] connect
[standalone@localhost:9990 /] /extension=org.wildfly.extension.microprofile.openapi-smallrye:add()
{"outcome" => "success"}
[standalone@localhost:9990 /] /subsystem=microprofile-openapi-smallrye:add()
{
"outcome" => "success",
"response-headers" => {
"operation-requires-reload" => true,
"process-state" => "reload-required"
}
}
[standalone@localhost:9990 /]
请注意:如果您尝试在浏览器中通过http://localhost:8080/openapi访问它,您可能会收到 406 - Not Acceptable。只需请求正确的内容类型或使用cURL
:
curl -v http://localhost:8080/openapi // YAML output
curl -v http://localhost:8080/openapi?format=JSON // JSON output