From cbbda47ad6e3f1f06326d10d697d6c7ea4ad5529 Mon Sep 17 00:00:00 2001 From: Yuriy Movchan Date: Thu, 15 Dec 2022 18:46:16 +0300 Subject: [PATCH] fix: user attributes not updated #2753 --- .../io/jans/as/server/service/ClientService.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/jans-auth-server/server/src/main/java/io/jans/as/server/service/ClientService.java b/jans-auth-server/server/src/main/java/io/jans/as/server/service/ClientService.java index 0344f111242..99116bf2a84 100644 --- a/jans-auth-server/server/src/main/java/io/jans/as/server/service/ClientService.java +++ b/jans-auth-server/server/src/main/java/io/jans/as/server/service/ClientService.java @@ -74,9 +74,24 @@ public class ClientService { private StaticConfiguration staticConfiguration; public void persist(Client client) { + ignoreCustomObjectClassesForNonLDAP(client); ldapEntryManager.persist(client); } + + private Client ignoreCustomObjectClassesForNonLDAP(Client client) { + String persistenceType = ldapEntryManager.getPersistenceType(); + log.debug("persistenceType: {}", persistenceType); + if (!PersistenceEntryManager.PERSITENCE_TYPES.ldap.name().equals(persistenceType)) { + log.debug( + "Setting CustomObjectClasses :{} to null as it's used only for LDAP and current persistenceType is {} ", + client.getCustomObjectClasses(), persistenceType); + client.setCustomObjectClasses(null); + } + + return client; + } + public void merge(Client client) { ldapEntryManager.merge(client); removeFromCache(client);