Hi guys, this is my first time using keycloak, and I’m struggling to configure my own database to authenticate the users, so I’ve followed the instructions in Server Developer Guide and a few other sites (Keycloak Custom SPI to use existing database as federation authentication | Javarevisited), and at first glance it seems to be ok (meaning that I’ve created my own implementations of UserStorageProviderFactory<T>
, UserStorageProvider
and UserLookupProvider
(this last two in the same class), added the jar in the folder ‘provided’ and the full path of the Factory class in org.keycloak.storage.UserStorageProviderFactory) and actually in the keycloak console I can see the new provider (is the first one):
but when I try to create a new provider, I get an unknown error from the console, and in the command line I see the following error:
[org.keycloak.services.error.KeycloakErrorHandler] (executor-thread-11) Uncaught server error: com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot construct instance of
java.util.ArrayList
(although at least one Creator exists): no String-argument constructor/factory method to deserialize from String value (‘java:jboss/datasources/PasswordDB’)at [Source: (io.quarkus.vertx.http.runtime.VertxInputStream); line: 1, column: 36] (through reference chain: org.keycloak.representations.idm.ComponentRepresentation[“config”]->org.keycloak.common.util.MultivaluedHashMap[“Jndi_Name”])
at com.fasterxml.jackson.databind.exc.MismatchedInputException.from(MismatchedInputException.java:63)
at com.fasterxml.jackson.databind.DeserializationContext.reportInputMismatch(DeserializationContext.java:1728)
Any clues on what’s going on?