I am getting the following error when starting keycloak version 25.0.0.
ERROR: org.eclipse.microprofile.config.spi.ConfigSource: org.jboss.resteasy.microprofile.config.ServletConfigSource not a subtype
We upgraded from 12 to 25. However, our SPI was built against 10. After making several changes and building against 25, I am stuck with the above error. I fixed some other not a subtype errors by adding some more dependencies to the pom file after reading online. But, I can not find a solution for the above error. Below is what I currently have as dependencies. Can someone tell me what else I need to include or even how to begin to figure out what I might need to include?
I added the following and that helped. I think. Now I get
ERROR: io.smallrye.config.ConfigSourceFactory: io.smallrye.config.PropertiesLocationConfigSourceFactory not a subtype
Instead of adding more and more dependencies, perhaps a complete new rewrite of your extension based on current dependencies would be the better approach!?
As you are comming from v10/12, this was a complete different environment than it is today…
I am starting to wonder about a complete rewrite. Although I am not sure time will allow it. And, the original developer is no longer with the company, so that doesn’t help either. I don’t mind including more dependencies if it will work.
Caused by: io.smallrye.config.ConfigValidationException: Configuration validation failed:
java.lang.IllegalArgumentException: SRCFG00013: No Converter registered for class io.quarkus.runtime.configuration.MemorySize
at io.smallrye.config.ConfigMappingProvider.mapConfiguration(ConfigMappingProvider.java:75)
at io.smallrye.config.SmallRyeConfig.(SmallRyeConfig.java:84)
at io.smallrye.config.SmallRyeConfigBuilder.build(SmallRyeConfigBuilder.java:724)
at io.quarkus.deployment.configuration.BuildTimeConfigurationReader.initConfiguration(BuildTimeConfigurationReader.java:415)
at io.quarkus.deployment.ExtensionLoader.loadStepsFrom(ExtensionLoader.java:137)
at io.quarkus.deployment.QuarkusAugmentor.run(QuarkusAugmentor.java:107)
at io.quarkus.runner.bootstrap.AugmentActionImpl.runAugment(AugmentActionImpl.java:330)
at io.quarkus.runner.bootstrap.AugmentActionImpl.createProductionApplication(AugmentActionImpl.java:175)
at io.quarkus.deployment.mutability.ReaugmentTask.main(ReaugmentTask.java:69)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
And now my error is.
Caused by: java.lang.LinkageError: loader constraint violation: loader io.quarkus.bootstrap.classloading.QuarkusClassLoader @6d0b5baf wants to load interface io.quarkus.arc.runtime.BeanContainer. A different interface with the same name was previously loaded by java.net.URLClassLoader @b83a9be. (io.quarkus.arc.runtime.BeanContainer is in unnamed module of loader java.net.URLClassLoader @b83a9be, parent loader ‘app’)
I am really starting to think I have went down the wrong path here. Looking at the current code. It seems to need jboss resteasy for HttpRequest and HttpResponse, jboss logging, fasterxml.jackson, and jarkarta.ws.rs. Should I just not be using these in the newer Keycloak, or have I really just messed up the dependencies.