第54章 OpenAPI サポートによる JAX-RS エンドポイントの拡張

概要

CXF OpenApiFeature (org.apache.cxf.jaxrs.openapi.OpenApiFeature) を使用すると、パブリッシュ済みの JAX-RS サービスエンドポイントを単純な設定で拡張することによって OpenAPI ドキュメントを生成できます。

OpenApiFeature は、Spring Boot および Karaf 実装の両方でサポートされます。

54.1. OpenApiFeature オプション

OpenApiFeature では、以下のオプションを使用できます。

表54.1 OpenApiFeature 操作

名前説明デフォルト

configLocation

OpenAPI 設定の場所

null

contactEmail

連絡先メール+

null

contactName

連絡先名+

null

contactUrl

連絡先リンク+

null

customizer

カスタマイザークラスインスタンス

null

description

説明+

null

filterClass

セキュリティーフィルター++

null

ignoredRoutes

すべてのリソースをスキャンする際に、特定のパスを除外します (scanAllResources を参照)++

null

license

ライセンス+

null

licenseUrl

ライセンス URL+

null

prettyPrint

openapi.json を生成する際に、JSON ドキュメント++ をプリティープリントで出力します。。

true

propertiesLocation

プロパティーファイルの場所

/swagger.properties

readAllResources

@Operation++ なしですべての操作も読み取ります。

true

resourceClasses

スキャンする必要があるリソースクラスの一覧

null

resourcePackages

リソースのスキャンが必要なパッケージ名の一覧++

null

runAsFilter

機能をフィルターとして実行します。

false

scan

すべての JAX-RS リソースを自動的にスキャンします。

true

scanKnownConfigLocations

既知の OpenAPI 設定の場所 (クラスパスまたはファイルシステム) をスキャンします。

openapi-configuration.yaml
openapi-configuration.json
openapi.yaml
openapi.json

true

scannerClass

アプリケーション、リソースパッケージ、リソースクラス、およびクラスパススキャンのスコープを設定するために使用される JAX-RS API スキャナークラスの名前。詳細は、リソーススキャン のセクションを参照してください。

null

securityDefinitions

セキュリティー定義の一覧+

null

supportSwaggerUi

SwaggerUI サポートのオン/オフを切り替えます

null(== true)

swaggerUiConfig

Swagger UI の設定

null

swaggerUiMavenGroupAndArtifact

SwaggerUI を特定するための Maven アーティファクト

null

swaggerUiVersion

SwaggerUI のバージョン

null

termsOfServiceUrl

サービス URL+

null

title

タイトル+

null

useContextBasedConfig

設定されている場合に、それぞれの OpenApiContext インスタンスに対して一意の Context Id が生成されます (複数のサーバーエンドポイントの使用 を参照)。また、scan プロパティーを false に設定することもできます。

false

version

バージョン+

null

+ オプションは OpenAPI クラスで定義されます。

++ オプションは SwaggerConfiguration クラスで定義されます。