Hi all. We're facing the same issue when upgrading from Keycloak 22 to Keycloak 24.
Our extension is using a third-party library which requires Jakarta RS WS client. So far `ClientBuilder.buildClient()` worked well.
We don't have an option to alter this, so we can't just switch to java.net.HttpClient for example. A `jakarta.ws.rs.client.Client` implementation is the only option.
Also, building our own Keycloak is not an option because we're using RedHat build of Keycloak and paying for RH support.
I've already opened a support ticket to see what their recommendation would be on this. Meanwhile we're trying to find some ways to resolve it.
We tried to bundle "io.quarkus:quarkus-resteasy-client" and "io.quarkus:quarkus-resteasy-jackson" with our extension excluding already existing libraries to avoid conflicts, but we get the following error in "kc.sh build" output:
> 8.015 ERROR: Build failure: Build failed due to errors
> 8.015 [error]: Build step io.quarkus.arc.deployment.ArcProcessor#registerBeans threw an exception: java.lang.NullPointerException: Cannot invoke "
org.jboss.jandex.ClassInfo.name()" because "currentClazz" is null
>8.015 at io.quarkus.resteasy.reactive.server.deployment.ResteasyReactiveProcessor.createTypedAnnotationInstance(ResteasyReactiveProcessor.java:876)
This is our current dependency declaration in Gradle build script just in case:
implementation ('io.quarkus:quarkus-resteasy-client:3.8.5') {
exclude group: 'io.quarkus', module: 'quarkus-arc'
exclude group: 'io.quarkus', module: 'quarkus-core'
exclude group: 'io.quarkus', module: 'quarkus-resteasy-common'
exclude group: 'jakarta.interceptor', module: 'jakarta.interceptor-api'
exclude group: '
jakarta.ws.rs', module: 'jakarta.ws.rs-api'
exclude group: 'org.apache.httpcomponents', module: 'httpasyncclient'
exclude group: 'org.jboss.logging', module: 'commons-logging-jboss-logging'
exclude group: 'org.eclipse.microprofile.config', module: 'microprofile-config-api'
}
implementation ('io.quarkus:quarkus-resteasy-jackson:3.8.5') {
exclude group: 'io.quarkus', module: 'quarkus-arc'
exclude group: 'io.quarkus', module: 'quarkus-core'
exclude group: 'io.quarkus', module: 'quarkus-jackson'
exclude group: 'io.quarkus', module: 'quarkus-vertx-http'
exclude group: 'jakarta.xml.bind', module: 'jakarta.xml.bind-api'
exclude group: 'io.smallrye.reactive', module: 'smallrye-mutiny-vertx-uri-template'
exclude group: 'org.eclipse.microprofile.config', module: 'microprofile-config-api'
}
The problem seems to be caused by "io.quarkus:quarkus-resteasy-jackson" specifically. Without it the ClientBuilder works, but it throws runtime exceptions when trying to use JSON content type.
Any suggestions? Has anyone managed to solve this?
понедельник, 3 июня 2024 г. в 19:42:20 UTC+3, Timothy Vogel: