From a2e71010eb3b2e5ac0b41d72d0ab8eebd2a79179 Mon Sep 17 00:00:00 2001 From: Marko Bekhta Date: Tue, 12 Nov 2024 22:06:37 +0100 Subject: [PATCH] Consistently use `quarkus-generator.openApiSpecId` as openApiSpecId in templates (#848) as otherwise using the `configKey` instead can lead to a mismatch and an exception like: ``` [error]: Build step io.quarkus.arc.deployment.ArcProcessor#validate threw an exception: jakarta.enterprise.inject.spi.DeploymentException: jakarta.enterprise.inject.UnsatisfiedResolutionException: Unsatisfied dependency for type io.quarkiverse.openapi.generator.providers.CompositeAuthenticationProvider and qualifiers [@OpenApiSpec(openApiSpecId = "your-config-key-not-the-same-as-spec-id")] - injection target: parameter 'compositeProvider' of com.acme.api.auth.AuthenticationPropagationHeadersFactory constructor - declared on CLASS bean [types=[com.acme.api.auth.AuthenticationPropagationHeadersFactory, io.quarkiverse.openapi.generator.providers.AbstractAuthenticationPropagationHeadersFactory, org.eclipse.microprofile.rest.client.ext.ClientHeadersFactory, java.lang.Object], qualifiers=[@Default, @Any], target=com.acme.api.auth.AuthenticationPropagationHeadersFactory] The following beans match by type, but none has matching qualifiers: - SYNTHETIC bean [types=[io.quarkiverse.openapi.generator.providers.CompositeAuthenticationProvider, java.lang.Object], qualifiers=[@Any, @io.quarkiverse.openapi.generator.OpenApiSpec(openApiSpecId = "your-spec-id-not-the-same-as-config-key")], target=n/a] ``` --- .../microprofile/auth/compositeAuthenticationProvider.qute | 2 +- .../templates/libraries/microprofile/auth/headersFactory.qute | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/client/deployment/src/main/resources/templates/libraries/microprofile/auth/compositeAuthenticationProvider.qute b/client/deployment/src/main/resources/templates/libraries/microprofile/auth/compositeAuthenticationProvider.qute index c1fd07985..836d2e711 100644 --- a/client/deployment/src/main/resources/templates/libraries/microprofile/auth/compositeAuthenticationProvider.qute +++ b/client/deployment/src/main/resources/templates/libraries/microprofile/auth/compositeAuthenticationProvider.qute @@ -22,7 +22,7 @@ package {apiPackage}.auth; public class CompositeAuthenticationProvider implements jakarta.ws.rs.client.ClientRequestFilter { @jakarta.inject.Inject - @io.quarkiverse.openapi.generator.OpenApiSpec(openApiSpecId="{configKey}") + @io.quarkiverse.openapi.generator.OpenApiSpec(openApiSpecId="{quarkus-generator.openApiSpecId}") io.quarkiverse.openapi.generator.providers.CompositeAuthenticationProvider compositeProvider; @java.lang.Override diff --git a/client/deployment/src/main/resources/templates/libraries/microprofile/auth/headersFactory.qute b/client/deployment/src/main/resources/templates/libraries/microprofile/auth/headersFactory.qute index 0fc3f221c..adb47b393 100644 --- a/client/deployment/src/main/resources/templates/libraries/microprofile/auth/headersFactory.qute +++ b/client/deployment/src/main/resources/templates/libraries/microprofile/auth/headersFactory.qute @@ -3,7 +3,7 @@ package {apiPackage}.auth; public class AuthenticationPropagationHeadersFactory extends io.quarkiverse.openapi.generator.providers.AbstractAuthenticationPropagationHeadersFactory { @jakarta.inject.Inject - public AuthenticationPropagationHeadersFactory(@io.quarkiverse.openapi.generator.OpenApiSpec(openApiSpecId="{configKey}") io.quarkiverse.openapi.generator.providers.CompositeAuthenticationProvider compositeProvider, io.quarkiverse.openapi.generator.OpenApiGeneratorConfig generatorConfig, io.quarkiverse.openapi.generator.providers.HeadersProvider headersProvider) { + public AuthenticationPropagationHeadersFactory(@io.quarkiverse.openapi.generator.OpenApiSpec(openApiSpecId="{quarkus-generator.openApiSpecId}") io.quarkiverse.openapi.generator.providers.CompositeAuthenticationProvider compositeProvider, io.quarkiverse.openapi.generator.OpenApiGeneratorConfig generatorConfig, io.quarkiverse.openapi.generator.providers.HeadersProvider headersProvider) { super(compositeProvider, generatorConfig, headersProvider); }