Saltar al contenido

La aplicación keycloak spring-boot de ejemplo no encuentra el bean KeycloakSpringBootConfigResolver

Solución:

No tengo una solución en este momento, pero puedo ver que exactamente el mismo problema se registró en Keycloak Jira hace un par de meses: https://issues.jboss.org/browse/KEYCLOAK-10595. El problema parece deberse al código entregado con este PR: https://github.com/keycloak/keycloak/pull/6075.

El autor del PR describió el problema de esta manera: “El único problema restante es que el resolutor generalmente está contenido en la configuración utilizando KeycloakAutoConfiguration (en mi ejemplo, SharedConfiguration), por lo que está intentando acceder al bean mientras la configuración es aún se está creando. Esto se puede resolver moviendo el bean resolutor a otra configuración que debe cargarse antes de KeycloakAutoConfiguration “. (fuente: https://issues.jboss.org/browse/KEYCLOAK-10334?focusedCommentId=13738518&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-13738518)


ACTUALIZAR (ANTIGUO)

Sobre el problema de Keycloak Jira (https://issues.jboss.org/browse/KEYCLOAK-11282), se ha sugerido una solución temporal.

@Configuration
public class MyKeycloakSpringBootConfigResolver extends KeycloakSpringBootConfigResolver {
    private final KeycloakDeployment keycloakDeployment;

    public MyKeycloakSpringBootConfigResolver(KeycloakSpringBootProperties properties) {
        keycloakDeployment = KeycloakDeploymentBuilder.build(properties);
    }

    @Override
    public KeycloakDeployment resolve(HttpFacade.Request facade) {
        return keycloakDeployment;
    }
}

ÚLTIMA ACTUALIZACIÓN

Una forma más sencilla de resolver el problema es declarar un KeycloakSpringBootConfigResolver en una clase de configuración separada. Esta opción solucionará problemas con Spring Boot y Spring Security.

@Configuration
public class KeycloakConfig {

    @Bean
    public KeycloakSpringBootConfigResolver keycloakConfigResolver() {
        return new KeycloakSpringBootConfigResolver();
    }
}
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *