diff --git a/src/main/java/org/olat/user/UserImpl.java b/src/main/java/org/olat/user/UserImpl.java index 4cfbfb09c5d7ca042f2a32a4afc2dfe83f8291b5..4b11e710465c359681bcaa98024915e0a23d18a3 100644 --- a/src/main/java/org/olat/user/UserImpl.java +++ b/src/main/java/org/olat/user/UserImpl.java @@ -33,6 +33,8 @@ import org.olat.core.commons.persistence.PersistentObject; import org.olat.core.id.Preferences; import org.olat.core.id.User; import org.olat.core.id.UserConstants; +import org.olat.core.logging.OLog; +import org.olat.core.logging.Tracing; import org.olat.user.propertyhandlers.UserPropertyHandler; /** @@ -55,6 +57,7 @@ import org.olat.user.propertyhandlers.UserPropertyHandler; public class UserImpl extends PersistentObject implements User { private static final long serialVersionUID = -2872102058369727753L; + private static final OLog log = Tracing.createLoggerFor(UserImpl.class); private Preferences preferences; @@ -158,6 +161,7 @@ public class UserImpl extends PersistentObject implements User { /** * @see org.olat.core.id.User#getProperty(java.lang.String, java.util.Locale) */ + @Override public String getProperty(String propertyName, Locale locale) { UserManager um = UserManager.getInstance(); UserPropertyHandler propertyHandler = um.getUserPropertiesConfig().getPropertyHandler(propertyName); @@ -169,10 +173,15 @@ public class UserImpl extends PersistentObject implements User { /** * @see org.olat.core.id.User#setProperty(java.lang.String, java.lang.String) */ + @Override public void setProperty(String propertyName, String propertyValue) { UserManager um = UserManager.getInstance(); UserPropertyHandler propertyHandler = um.getUserPropertiesConfig().getPropertyHandler(propertyName); - propertyHandler.setUserProperty(this, propertyValue); + if(propertyHandler == null) { + log.error("Try to set unkown property: " + propertyName + " for user: " + getKey()); + } else { + propertyHandler.setUserProperty(this, propertyValue); + } } /**