Crear usuario en keycloak través de declaraciones de cliente de administración keycloak IllegalArgumentException

ksadjad:

Quiero crear un usuario a través keycloak cliente de administración, pero me estoy haciendo:

java.lang.IllegalArgumentException: RESTEASY003720: ruta reino parámetro no ha sido proporcionada por el mapa de parámetros

Aquí está mi frijol para keycloak:

@Bean
Keycloak keycloak() {
return KeycloakBuilder
    .builder()
    .serverUrl(localhost:9080/auth)
    .realm(REALM)
    .clientId(CLIENT_ID)
    .username(USERNAME)
    .password(PASSWORD)
    .resteasyClient(new ResteasyClientBuilder().connectionPoolSize(10).build())
    .build();
}

Yo uso este código para llamar keycloak:

CredentialRepresentation credentialRepresentation = new 
CredentialRepresentation();
credentialRepresentation.setType(CredentialRepresentation.PASSWORD);
credentialRepresentation.setValue(password);
UserRepresentation userRepresentation = new UserRepresentation();
userRepresentation.setUsername(username);
userRepresentation.setFirstName(firstName);
userRepresentation.setLastName(lastName);
userRepresentation.setEnabled(true);
userRepresentation.setCredentials(
    Arrays.asList(credentialRepresentation));
keycloak.realm(REALM).users().create(userRepresentation);

tanto keycloak y keycloak cliente de administración son la misma versión (4.0.0.Final)

Mi StackTrace se ve así:

java.lang.IllegalArgumentException: RESTEASY003720: param reino camino ha sido proporcionada por la carpeta de parámetros en org.jboss.resteasy.specimpl.ResteasyUriBuilder.replaceParameter (ResteasyUriBuilder.java:659) en org.jboss.resteasy.specimpl.ResteasyUriBuilder.buildString (ResteasyUriBuilder.java:581) en org.jboss.resteasy.specimpl.ResteasyUriBuilder.buildFromValues ​​(ResteasyUriBuilder.java:780) en org.jboss.resteasy.specimpl.ResteasyUriBuilder.build (ResteasyUriBuilder.java:772) en org.jboss. resteasy.client.jaxrs.internal.ClientWebTarget.getUri (ClientWebTarget.java:108) en org.jboss.resteasy.client.jaxrs.internal.proxy.ClientInvoker.createRequest (ClientInvoker.java:124) en org.jboss.resteasy. client.jaxrs.internal.proxy.ClientInvoker.invoke (ClientInvoker.java:104) en org.jboss.resteasy.client.jaxrs.internal.proxy.ClientProxy.invoke (ClientProxy.java:76) en com.sun.proxy. $ Proxy240.grantToken (origen desconocido) en org.keycloak.admin.client.token.TokenManager.grantToken (TokenManager.java:89) en org.keycloak.admin.client.token.TokenManager .getAccessToken (TokenManager.java:69) en org.mycompany.usermanagement.service.KeycloakService.createUserInSSO (KeycloakService.java:45)

y aquí está mi build.gradle

compile group: 'org.keycloak', name: 'keycloak-admin-client', version: '4.0.0.Final'
compile group: 'org.jboss.resteasy', name: 'resteasy-jaxrs', version: '3.1.4.Final'
compile group: 'org.jboss.resteasy', name: 'resteasy-client', version: '3.1.4.Final'
compile group: 'org.jboss.resteasy', name: 'resteasy-jackson2-provider', version: '3.1.4.Final'
Perla Negra :

¿Está utilizando la primavera de arranque?

He probado su escenario para mí, y funciona bien para mí (probado en keycloak 4.0.0 y la primavera de arranque 1.5.10.RELEASE).

He hecho 1 cambio que la forma de crear la haba Keycloak (mi código es de oficiales docs ). Asegúrese de que realmes mastery client_ides admin-cli.

@Bean
Keycloak initKeycloakWithAdminRole() {
    return Keycloak.getInstance(
            "http://localhost:8080/auth",
            "master",
            "admin",
            "admin",
            "admin-cli");


Mi código

servicio Código

controlador Código

depedencies aquí

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=167315&siteId=1
Recomendado
Clasificación