quarkus: OIDC - NullPointerException
Hello!
I am using quarkus:2.9.2.Final and configured oidc with the following properties:
quarkus.oidc.enabled=true
quarkus.oidc.discovery-enabled=false
quarkus.oidc.authentication.user-info-required=true
quarkus.oidc.roles.role-claim-path=roles
quarkus.oidc.proxy.host=my-proxy-host
quarkus.oidc.proxy.port=my-proxy-port
quarkus.oidc.auth-server-url=my-server-url
quarkus.oidc.client-id=my-client-id
quarkus.oidc.credentials.secret=my-client-secret
quarkus.oidc.token-path=/oauth/token
quarkus.oidc.authorization-path=/oauth/authorize
quarkus.oidc.introspection-path=/introspect
quarkus.oidc.user-info-path=/userinfo
quarkus.oidc.authentication.response_type=token
quarkus.oidc.authentication.add-openid-scope=false
quarkus.log.min-level=DEBUG
quarkus.log.category."io.quarkus.oidc".level=DEBUG
with all the variables for url, client and secret configured.
When I am trying to start it I get the following error:
- ERROR [io.qua.run.Application] (Quarkus Main Thread) Failed to start application (with profile dev): java.lang.NullPointerException
- at io.quarkus.oidc.runtime.DefaultTenantConfigResolver_Bean.create(Unknown Source)
- at io.quarkus.oidc.runtime.DefaultTenantConfigResolver_Bean.create(Unknown Source)
- at io.quarkus.arc.impl.AbstractSharedContext.createInstanceHandle(AbstractSharedContext.java:111)
- at io.quarkus.arc.impl.AbstractSharedContext$1.get(AbstractSharedContext.java:35)
- at io.quarkus.arc.impl.AbstractSharedContext$1.get(AbstractSharedContext.java:32)
- at io.quarkus.arc.impl.LazyValue.get(LazyValue.java:26)
- at io.quarkus.arc.impl.ComputingCache.computeIfAbsent(ComputingCache.java:69)
- at io.quarkus.arc.impl.AbstractSharedContext.get(AbstractSharedContext.java:32)
- at io.quarkus.arc.impl.ClientProxies.getApplicationScopedDelegate(ClientProxies.java:19)
- at io.quarkus.oidc.runtime.DefaultTenantConfigResolver_ClientProxy.arc$delegate(Unknown Source)
- at io.quarkus.oidc.runtime.DefaultTenantConfigResolver_ClientProxy.setSecurityEventObserved(Unknown Source)
- at io.quarkus.oidc.runtime.OidcRecorder.setSecurityEventObserved(OidcRecorder.java:227)
- at io.quarkus.deployment.steps.OidcBuildStep$findSecurityEventObservers1053450247.deploy_0(Unknown Source)
- at io.quarkus.deployment.steps.OidcBuildStep$findSecurityEventObservers1053450247.deploy(Unknown Source)
- at io.quarkus.runner.ApplicationImpl.doStart(Unknown Source)
- at io.quarkus.runtime.Application.start(Application.java:101)
- at io.quarkus.runtime.ApplicationLifecycleManager.run(ApplicationLifecycleManager.java:103)
- at io.quarkus.runtime.Quarkus.run(Quarkus.java:67)
- at io.quarkus.runtime.Quarkus.run(Quarkus.java:41)
- at io.quarkus.runtime.Quarkus.run(Quarkus.java:120)
- at com.company.Main.main(Main.java:20)
- at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
- at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
- at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
- at java.base/java.lang.reflect.Method.invoke(Method.java:566)
- at io.quarkus.runner.bootstrap.StartupActionImpl$1.run(StartupActionImpl.java:103)
I do not event know where to start to investigate it.
One thing that I noticed was that if I disabled the oidc, the application starts without error (if I set quarkus.oidc.enabled=false)
And clue from where to start?
Thank you!
About this issue
- Original URL
- State: closed
- Created 2 years ago
- Comments: 26 (15 by maintainers)
Commits related to this issue
- Fix OidcBuildStep#findSecurityEventObservers() - this build step should consume RuntimeConfigSetupCompleteBuildItem because DefaultTenantConfigResolver injects a runtime config property - resolves #2... — committed to mkouba/quarkus by mkouba 2 years ago
- Fix OidcBuildStep#findSecurityEventObservers() - this build step should consume RuntimeConfigSetupCompleteBuildItem because DefaultTenantConfigResolver injects a runtime config property - resolves #2... — committed to mkouba/quarkus by mkouba 2 years ago
- Fix OidcBuildStep#findSecurityEventObservers() - this build step should consume RuntimeConfigSetupCompleteBuildItem because DefaultTenantConfigResolver injects a runtime config property - resolves #2... — committed to mkouba/quarkus by mkouba 2 years ago
- Fix OidcBuildStep#findSecurityEventObservers() - this build step should consume RuntimeConfigSetupCompleteBuildItem because DefaultTenantConfigResolver injects a runtime config property - resolves #2... — committed to gsmet/quarkus by mkouba 2 years ago
Ah, that’s some good news! Yes, quarkus is using
org.eclipse.microprofile.config:microprofile-config-api:2.0.1and you should not bring any MP dependencies manually but rely on the versions included by quarkus extensions instead.Actually, I don’t think this would help. Testing my fix for https://github.com/quarkusio/quarkus/issues/26236#issuecomment-1163174888 right now…