privacyidea/keycloak-provider

KC21 crash - HttpRequest package changed

nilsbehlen opened this issue · 4 comments

Trying to use the provider in KC21 results in the following error:
Uncaught server error: java.lang.NoSuchMethodError: org.keycloak.authentication.AuthenticationFlowContext.getHttpRequest()Lorg/jboss/resteasy/spi/HttpRequest;

This is probably because in keycloak-server-spi-private 21.0.0 the HttpRequest is located at
org.keycloak.http.HttpRequest instead of org/jboss/resteasy/spi/HttpRequest (see error message)

updating the dependencies might fix this, however only for KC21.
How will this work for lower versions?

Building the provider with 21.0.0 dependencies fixes the problem for KC21
PrivacyIDEA-Provider-v1.2.0.zip
Test with older KC version pending

Test KC20 - 2023-03-01 11:12:33,596 ERROR [org.keycloak.services.error.KeycloakErrorHandler] (executor-thread-2) Uncaught server error: java.lang.NoSuchMethodError: 'org.keycloak.http.HttpRequest org.keycloak.authentication.AuthenticationFlowContext.getHttpRequest()'

Interesting is, that in KC20 occurs such a warning:
2023-03-01 11:10:31,189 WARN [org.infinispan.PERSISTENCE] (keycloak-cache-init) ISPN000554: jboss-marshalling is deprecated and planned for removal
An alternative should be prepared also before v21 if the jboss-marshalling was deprecated...

i do not think we use that, so it should not bother us.
I suspected it would not work for kc20, so we will have to release the version 1.2.0 built with kc21 dependencies in addition to the already released version