You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2016/12/02 13:32:34 UTC

svn commit: r1772344 - in /openmeetings/application: branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/ branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/ trunk/openmeetings-core/src/main/ja...

Author: solomax
Date: Fri Dec  2 13:32:33 2016
New Revision: 1772344

URL: http://svn.apache.org/viewvc?rev=1772344&view=rev
Log:
[OPENMEETINGS-1511] user picture URI is set to absolute URI from config

Modified:
    openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManagement.java
    openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapOptions.java
    openmeetings/application/branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManagement.java
    openmeetings/application/branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapOptions.java
    openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManagement.java
    openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapOptions.java

Modified: openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManagement.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManagement.java?rev=1772344&r1=1772343&r2=1772344&view=diff
==============================================================================
--- openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManagement.java (original)
+++ openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManagement.java Fri Dec  2 13:32:33 2016
@@ -89,7 +89,6 @@ public class LdapLoginManagement {
 	private static final String CONFIGKEY_LDAP_KEY_COUNTRY = "ldap_user_attr_country";
 	private static final String CONFIGKEY_LDAP_KEY_TOWN = "ldap_user_attr_town";
 	private static final String CONFIGKEY_LDAP_KEY_PHONE = "ldap_user_attr_phone";
-	static final String CONFIGKEY_LDAP_KEY_PICTURE_URI = "ldap_user_picture_uri";
 	private static final String CONFIGKEY_LDAP_KEY_GROUP = "ldap_group_attr";
 
 	// LDAP default attributes mapping
@@ -105,7 +104,6 @@ public class LdapLoginManagement {
 	private static final String LDAP_KEY_TOWN = "l";
 	private static final String LDAP_KEY_PHONE = "telephoneNumber";
 	private static final String LDAP_KEY_TIMEZONE = "timezone";
-	private static final String LDAP_KEY_PICTURE_URI = "pictureUri";
 	private static final String LDAP_KEY_GROUP = "memberOf";
 
 	public enum AuthType {
@@ -113,13 +111,13 @@ public class LdapLoginManagement {
 		, SEARCHANDBIND
 		, SIMPLEBIND
 	}
-	
+
 	public enum Provisionning {
 		NONE
 		, AUTOUPDATE
 		, AUTOCREATE
 	}
-	
+
 	public enum GroupMode {
 		NONE
 		, ATTRIBUTE
@@ -143,7 +141,7 @@ public class LdapLoginManagement {
 			conn.bind();
 		}
 	}
-	
+
 	private static Attribute getAttr(Properties config, Entry entry, String aliasCode, String defaultAlias) throws LdapInvalidAttributeValueException {
 		String alias = config.getProperty(aliasCode, "");
 		Attribute a = entry.get(Strings.isEmpty(alias) ? defaultAlias : alias);
@@ -154,11 +152,11 @@ public class LdapLoginManagement {
 		Attribute a = getAttr(config, entry, aliasCode, defaultAlias);
 		return a == null ? null : a.getString();
 	}
-	
+
 	private static String getLogin(Properties config, Entry entry) throws LdapInvalidAttributeValueException {
 		return getStringAttr(config, entry, CONFIGKEY_LDAP_KEY_LOGIN, LDAP_KEY_LOGIN);
 	}
-	
+
 	/**
 	 * Ldap Login
 	 * 
@@ -177,7 +175,7 @@ public class LdapLoginManagement {
 			if (w.options.useLowerCase) {
 				login = login.toLowerCase();
 			}
-			
+
 			boolean authenticated = true;
 			Dn userDn = null;
 			Entry entry = null;
@@ -266,12 +264,12 @@ public class LdapLoginManagement {
 		}
 		return u;
 	}
-	
+
 	public void importUsers(Long domainId, boolean print) throws OmException {
 		try (LdapWorker w = new LdapWorker(domainId)) {
 			bindAdmin(w.conn, w.options);
 			Dn baseDn = new Dn(w.options.searchBase);
-	
+
 			try (EntryCursor cursor = new EntryCursorImpl(w.conn.search(
 					new SearchRequestImpl()
 						.setBase(baseDn)
@@ -306,14 +304,14 @@ public class LdapLoginManagement {
 			throw new OmException(e);
 		}
 	}
-	
+
 	private class LdapWorker implements Closeable {
 		LdapConnection conn = null;
 		Properties config = new Properties();
 		LdapOptions options = null;
 		Long domainId = null;
 		LdapConfig ldapCfg = null;
-		
+
 		public LdapWorker(Long domainId) throws Exception {
 			this.domainId = domainId;
 			ldapCfg = ldapConfigDao.get(domainId);
@@ -332,7 +330,7 @@ public class LdapLoginManagement {
 
 			conn = new LdapNetworkConnection(options.host, options.port, options.secure);
 		}
-		
+
 		public User getUser(Entry entry, User u) throws LdapException, CursorException, OmException, IOException {
 			if (entry == null) {
 				log.error("LDAP entry is null, search or lookup by Dn failed");
@@ -370,11 +368,9 @@ public class LdapLoginManagement {
 				tz = options.tz;
 			}
 			u.setTimeZoneId(timezoneUtil.getTimeZone(tz).getID());
-			String picture = getStringAttr(config, entry, CONFIGKEY_LDAP_KEY_PICTURE_URI, LDAP_KEY_PICTURE_URI);
-			if (picture == null) {
-				picture = options.pictureUri;
+			if (!Strings.isEmpty(options.pictureUri)) {
+				u.setPictureuri(options.pictureUri);
 			}
-			u.setPictureuri(picture);
 			
 			List<Dn> groups = new ArrayList<>();
 			if (GroupMode.ATTRIBUTE == options.groupMode) {
@@ -387,7 +383,7 @@ public class LdapLoginManagement {
 			} else if (GroupMode.QUERY == options.groupMode) {
 				Dn baseDn = new Dn(options.searchBase);
 				String searchQ = String.format(options.groupQuery, u.getLogin());
-		
+
 				try (EntryCursor cursor = new EntryCursorImpl(conn.search(
 						new SearchRequestImpl()
 							.setBase(baseDn)
@@ -431,7 +427,7 @@ public class LdapLoginManagement {
 			}
 			return u;
 		}
-		
+
 		@Override
 		public void close() throws IOException {
 			if (conn != null) {

Modified: openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapOptions.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapOptions.java?rev=1772344&r1=1772343&r2=1772344&view=diff
==============================================================================
--- openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapOptions.java (original)
+++ openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapOptions.java Fri Dec  2 13:32:33 2016
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.core.ldap;
 
-import static org.apache.openmeetings.core.ldap.LdapLoginManagement.CONFIGKEY_LDAP_KEY_PICTURE_URI;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
 
 import java.util.Properties;
@@ -53,7 +52,8 @@ public class LdapOptions {
 	private static final String CONFIGKEY_LDAP_USERDN_FORMAT = "ldap_userdn_format";
 	private static final String CONFIGKEY_LDAP_GROUP_QUERY = "ldap_group_query";
 	private static final String CONFIGKEY_LDAP_IMPORT_QUERY = "ldap_import_query";
-	
+	private static final String CONFIGKEY_LDAP_PICTURE_URI = "ldap_user_picture_uri";
+
 	AuthType type = AuthType.SIMPLEBIND;
 	Provisionning prov = Provisionning.AUTOCREATE;
 	AliasDerefMode derefMode = AliasDerefMode.DEREF_ALWAYS;
@@ -74,7 +74,7 @@ public class LdapOptions {
 	String userDn = EMPTY_FORMAT;
 	String pictureUri = null;
 	String importQuery = null;
-	
+
 	public LdapOptions(Properties config) {
 		String ldap_use_lower_case = config.getProperty(CONFIGKEY_LDAP_USE_LOWER_CASE, "false");
 		useLowerCase = "true".equals(ldap_use_lower_case);
@@ -135,7 +135,7 @@ public class LdapOptions {
 		tz = config.getProperty(CONFIGKEY_LDAP_TIMEZONE_NAME, null);
 		groupQuery = config.getProperty(CONFIGKEY_LDAP_GROUP_QUERY, EMPTY_FORMAT);
 		userDn = config.getProperty(CONFIGKEY_LDAP_USERDN_FORMAT, EMPTY_FORMAT);
-		pictureUri = config.getProperty(CONFIGKEY_LDAP_KEY_PICTURE_URI, null);
+		pictureUri = config.getProperty(CONFIGKEY_LDAP_PICTURE_URI, null);
 		importQuery = config.getProperty(CONFIGKEY_LDAP_IMPORT_QUERY, "(objectClass=*)");
 	}
 }

Modified: openmeetings/application/branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManagement.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManagement.java?rev=1772344&r1=1772343&r2=1772344&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManagement.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManagement.java Fri Dec  2 13:32:33 2016
@@ -89,7 +89,6 @@ public class LdapLoginManagement {
 	private static final String CONFIGKEY_LDAP_KEY_COUNTRY = "ldap_user_attr_country";
 	private static final String CONFIGKEY_LDAP_KEY_TOWN = "ldap_user_attr_town";
 	private static final String CONFIGKEY_LDAP_KEY_PHONE = "ldap_user_attr_phone";
-	static final String CONFIGKEY_LDAP_KEY_PICTURE_URI = "ldap_user_picture_uri";
 	private static final String CONFIGKEY_LDAP_KEY_GROUP = "ldap_group_attr";
 
 	// LDAP default attributes mapping
@@ -105,7 +104,6 @@ public class LdapLoginManagement {
 	private static final String LDAP_KEY_TOWN = "l";
 	private static final String LDAP_KEY_PHONE = "telephoneNumber";
 	private static final String LDAP_KEY_TIMEZONE = "timezone";
-	private static final String LDAP_KEY_PICTURE_URI = "pictureUri";
 	private static final String LDAP_KEY_GROUP = "memberOf";
 
 	public enum AuthType {
@@ -113,13 +111,13 @@ public class LdapLoginManagement {
 		, SEARCHANDBIND
 		, SIMPLEBIND
 	}
-	
+
 	public enum Provisionning {
 		NONE
 		, AUTOUPDATE
 		, AUTOCREATE
 	}
-	
+
 	public enum GroupMode {
 		NONE
 		, ATTRIBUTE
@@ -143,7 +141,7 @@ public class LdapLoginManagement {
 			conn.bind();
 		}
 	}
-	
+
 	private static Attribute getAttr(Properties config, Entry entry, String aliasCode, String defaultAlias) throws LdapInvalidAttributeValueException {
 		String alias = config.getProperty(aliasCode, "");
 		Attribute a = entry.get(Strings.isEmpty(alias) ? defaultAlias : alias);
@@ -154,11 +152,11 @@ public class LdapLoginManagement {
 		Attribute a = getAttr(config, entry, aliasCode, defaultAlias);
 		return a == null ? null : a.getString();
 	}
-	
+
 	private static String getLogin(Properties config, Entry entry) throws LdapInvalidAttributeValueException {
 		return getStringAttr(config, entry, CONFIGKEY_LDAP_KEY_LOGIN, LDAP_KEY_LOGIN);
 	}
-	
+
 	/**
 	 * Ldap Login
 	 * 
@@ -177,7 +175,7 @@ public class LdapLoginManagement {
 			if (w.options.useLowerCase) {
 				login = login.toLowerCase();
 			}
-			
+
 			boolean authenticated = true;
 			Dn userDn = null;
 			Entry entry = null;
@@ -266,12 +264,12 @@ public class LdapLoginManagement {
 		}
 		return u;
 	}
-	
+
 	public void importUsers(Long domainId, boolean print) throws OmException {
 		try (LdapWorker w = new LdapWorker(domainId)) {
 			bindAdmin(w.conn, w.options);
 			Dn baseDn = new Dn(w.options.searchBase);
-	
+
 			try (EntryCursor cursor = new EntryCursorImpl(w.conn.search(
 					new SearchRequestImpl()
 						.setBase(baseDn)
@@ -306,14 +304,14 @@ public class LdapLoginManagement {
 			throw new OmException(e);
 		}
 	}
-	
+
 	private class LdapWorker implements Closeable {
 		LdapConnection conn = null;
 		Properties config = new Properties();
 		LdapOptions options = null;
 		Long domainId = null;
 		LdapConfig ldapCfg = null;
-		
+
 		public LdapWorker(Long domainId) throws Exception {
 			this.domainId = domainId;
 			ldapCfg = ldapConfigDao.get(domainId);
@@ -332,7 +330,7 @@ public class LdapLoginManagement {
 
 			conn = new LdapNetworkConnection(options.host, options.port, options.secure);
 		}
-		
+
 		public User getUser(Entry entry, User u) throws LdapException, CursorException, OmException, IOException {
 			if (entry == null) {
 				log.error("LDAP entry is null, search or lookup by Dn failed");
@@ -370,11 +368,9 @@ public class LdapLoginManagement {
 				tz = options.tz;
 			}
 			u.setTimeZoneId(timezoneUtil.getTimeZone(tz).getID());
-			String picture = getStringAttr(config, entry, CONFIGKEY_LDAP_KEY_PICTURE_URI, LDAP_KEY_PICTURE_URI);
-			if (picture == null) {
-				picture = options.pictureUri;
+			if (!Strings.isEmpty(options.pictureUri)) {
+				u.setPictureuri(options.pictureUri);
 			}
-			u.setPictureuri(picture);
 			
 			List<Dn> groups = new ArrayList<>();
 			if (GroupMode.ATTRIBUTE == options.groupMode) {
@@ -387,7 +383,7 @@ public class LdapLoginManagement {
 			} else if (GroupMode.QUERY == options.groupMode) {
 				Dn baseDn = new Dn(options.searchBase);
 				String searchQ = String.format(options.groupQuery, u.getLogin());
-		
+
 				try (EntryCursor cursor = new EntryCursorImpl(conn.search(
 						new SearchRequestImpl()
 							.setBase(baseDn)
@@ -431,7 +427,7 @@ public class LdapLoginManagement {
 			}
 			return u;
 		}
-		
+
 		@Override
 		public void close() throws IOException {
 			if (conn != null) {

Modified: openmeetings/application/branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapOptions.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapOptions.java?rev=1772344&r1=1772343&r2=1772344&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapOptions.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapOptions.java Fri Dec  2 13:32:33 2016
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.core.ldap;
 
-import static org.apache.openmeetings.core.ldap.LdapLoginManagement.CONFIGKEY_LDAP_KEY_PICTURE_URI;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
 
 import java.util.Properties;
@@ -53,7 +52,8 @@ public class LdapOptions {
 	private static final String CONFIGKEY_LDAP_USERDN_FORMAT = "ldap_userdn_format";
 	private static final String CONFIGKEY_LDAP_GROUP_QUERY = "ldap_group_query";
 	private static final String CONFIGKEY_LDAP_IMPORT_QUERY = "ldap_import_query";
-	
+	private static final String CONFIGKEY_LDAP_PICTURE_URI = "ldap_user_picture_uri";
+
 	AuthType type = AuthType.SIMPLEBIND;
 	Provisionning prov = Provisionning.AUTOCREATE;
 	AliasDerefMode derefMode = AliasDerefMode.DEREF_ALWAYS;
@@ -74,7 +74,7 @@ public class LdapOptions {
 	String userDn = EMPTY_FORMAT;
 	String pictureUri = null;
 	String importQuery = null;
-	
+
 	public LdapOptions(Properties config) {
 		String ldap_use_lower_case = config.getProperty(CONFIGKEY_LDAP_USE_LOWER_CASE, "false");
 		useLowerCase = "true".equals(ldap_use_lower_case);
@@ -135,7 +135,7 @@ public class LdapOptions {
 		tz = config.getProperty(CONFIGKEY_LDAP_TIMEZONE_NAME, null);
 		groupQuery = config.getProperty(CONFIGKEY_LDAP_GROUP_QUERY, EMPTY_FORMAT);
 		userDn = config.getProperty(CONFIGKEY_LDAP_USERDN_FORMAT, EMPTY_FORMAT);
-		pictureUri = config.getProperty(CONFIGKEY_LDAP_KEY_PICTURE_URI, null);
+		pictureUri = config.getProperty(CONFIGKEY_LDAP_PICTURE_URI, null);
 		importQuery = config.getProperty(CONFIGKEY_LDAP_IMPORT_QUERY, "(objectClass=*)");
 	}
 }

Modified: openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManagement.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManagement.java?rev=1772344&r1=1772343&r2=1772344&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManagement.java (original)
+++ openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManagement.java Fri Dec  2 13:32:33 2016
@@ -89,7 +89,6 @@ public class LdapLoginManagement {
 	private static final String CONFIGKEY_LDAP_KEY_COUNTRY = "ldap_user_attr_country";
 	private static final String CONFIGKEY_LDAP_KEY_TOWN = "ldap_user_attr_town";
 	private static final String CONFIGKEY_LDAP_KEY_PHONE = "ldap_user_attr_phone";
-	static final String CONFIGKEY_LDAP_KEY_PICTURE_URI = "ldap_user_picture_uri";
 	private static final String CONFIGKEY_LDAP_KEY_GROUP = "ldap_group_attr";
 
 	// LDAP default attributes mapping
@@ -105,7 +104,6 @@ public class LdapLoginManagement {
 	private static final String LDAP_KEY_TOWN = "l";
 	private static final String LDAP_KEY_PHONE = "telephoneNumber";
 	private static final String LDAP_KEY_TIMEZONE = "timezone";
-	private static final String LDAP_KEY_PICTURE_URI = "pictureUri";
 	private static final String LDAP_KEY_GROUP = "memberOf";
 
 	public enum AuthType {
@@ -113,13 +111,13 @@ public class LdapLoginManagement {
 		, SEARCHANDBIND
 		, SIMPLEBIND
 	}
-	
+
 	public enum Provisionning {
 		NONE
 		, AUTOUPDATE
 		, AUTOCREATE
 	}
-	
+
 	public enum GroupMode {
 		NONE
 		, ATTRIBUTE
@@ -143,7 +141,7 @@ public class LdapLoginManagement {
 			conn.bind();
 		}
 	}
-	
+
 	private static Attribute getAttr(Properties config, Entry entry, String aliasCode, String defaultAlias) throws LdapInvalidAttributeValueException {
 		String alias = config.getProperty(aliasCode, "");
 		Attribute a = entry.get(Strings.isEmpty(alias) ? defaultAlias : alias);
@@ -154,11 +152,11 @@ public class LdapLoginManagement {
 		Attribute a = getAttr(config, entry, aliasCode, defaultAlias);
 		return a == null ? null : a.getString();
 	}
-	
+
 	private static String getLogin(Properties config, Entry entry) throws LdapInvalidAttributeValueException {
 		return getStringAttr(config, entry, CONFIGKEY_LDAP_KEY_LOGIN, LDAP_KEY_LOGIN);
 	}
-	
+
 	/**
 	 * Ldap Login
 	 * 
@@ -177,7 +175,7 @@ public class LdapLoginManagement {
 			if (w.options.useLowerCase) {
 				login = login.toLowerCase();
 			}
-			
+
 			boolean authenticated = true;
 			Dn userDn = null;
 			Entry entry = null;
@@ -266,12 +264,12 @@ public class LdapLoginManagement {
 		}
 		return u;
 	}
-	
+
 	public void importUsers(Long domainId, boolean print) throws OmException {
 		try (LdapWorker w = new LdapWorker(domainId)) {
 			bindAdmin(w.conn, w.options);
 			Dn baseDn = new Dn(w.options.searchBase);
-	
+
 			try (EntryCursor cursor = new EntryCursorImpl(w.conn.search(
 					new SearchRequestImpl()
 						.setBase(baseDn)
@@ -306,14 +304,14 @@ public class LdapLoginManagement {
 			throw new OmException(e);
 		}
 	}
-	
+
 	private class LdapWorker implements Closeable {
 		LdapConnection conn = null;
 		Properties config = new Properties();
 		LdapOptions options = null;
 		Long domainId = null;
 		LdapConfig ldapCfg = null;
-		
+
 		public LdapWorker(Long domainId) throws Exception {
 			this.domainId = domainId;
 			ldapCfg = ldapConfigDao.get(domainId);
@@ -332,7 +330,7 @@ public class LdapLoginManagement {
 
 			conn = new LdapNetworkConnection(options.host, options.port, options.secure);
 		}
-		
+
 		public User getUser(Entry entry, User u) throws LdapException, CursorException, OmException, IOException {
 			if (entry == null) {
 				log.error("LDAP entry is null, search or lookup by Dn failed");
@@ -370,11 +368,9 @@ public class LdapLoginManagement {
 				tz = options.tz;
 			}
 			u.setTimeZoneId(timezoneUtil.getTimeZone(tz).getID());
-			String picture = getStringAttr(config, entry, CONFIGKEY_LDAP_KEY_PICTURE_URI, LDAP_KEY_PICTURE_URI);
-			if (picture == null) {
-				picture = options.pictureUri;
+			if (!Strings.isEmpty(options.pictureUri)) {
+				u.setPictureuri(options.pictureUri);
 			}
-			u.setPictureuri(picture);
 			
 			List<Dn> groups = new ArrayList<>();
 			if (GroupMode.ATTRIBUTE == options.groupMode) {
@@ -387,7 +383,7 @@ public class LdapLoginManagement {
 			} else if (GroupMode.QUERY == options.groupMode) {
 				Dn baseDn = new Dn(options.searchBase);
 				String searchQ = String.format(options.groupQuery, u.getLogin());
-		
+
 				try (EntryCursor cursor = new EntryCursorImpl(conn.search(
 						new SearchRequestImpl()
 							.setBase(baseDn)
@@ -431,7 +427,7 @@ public class LdapLoginManagement {
 			}
 			return u;
 		}
-		
+
 		@Override
 		public void close() throws IOException {
 			if (conn != null) {

Modified: openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapOptions.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapOptions.java?rev=1772344&r1=1772343&r2=1772344&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapOptions.java (original)
+++ openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapOptions.java Fri Dec  2 13:32:33 2016
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.core.ldap;
 
-import static org.apache.openmeetings.core.ldap.LdapLoginManagement.CONFIGKEY_LDAP_KEY_PICTURE_URI;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
 
 import java.util.Properties;
@@ -53,7 +52,8 @@ public class LdapOptions {
 	private static final String CONFIGKEY_LDAP_USERDN_FORMAT = "ldap_userdn_format";
 	private static final String CONFIGKEY_LDAP_GROUP_QUERY = "ldap_group_query";
 	private static final String CONFIGKEY_LDAP_IMPORT_QUERY = "ldap_import_query";
-	
+	private static final String CONFIGKEY_LDAP_PICTURE_URI = "ldap_user_picture_uri";
+
 	AuthType type = AuthType.SIMPLEBIND;
 	Provisionning prov = Provisionning.AUTOCREATE;
 	AliasDerefMode derefMode = AliasDerefMode.DEREF_ALWAYS;
@@ -74,7 +74,7 @@ public class LdapOptions {
 	String userDn = EMPTY_FORMAT;
 	String pictureUri = null;
 	String importQuery = null;
-	
+
 	public LdapOptions(Properties config) {
 		String ldap_use_lower_case = config.getProperty(CONFIGKEY_LDAP_USE_LOWER_CASE, "false");
 		useLowerCase = "true".equals(ldap_use_lower_case);
@@ -135,7 +135,7 @@ public class LdapOptions {
 		tz = config.getProperty(CONFIGKEY_LDAP_TIMEZONE_NAME, null);
 		groupQuery = config.getProperty(CONFIGKEY_LDAP_GROUP_QUERY, EMPTY_FORMAT);
 		userDn = config.getProperty(CONFIGKEY_LDAP_USERDN_FORMAT, EMPTY_FORMAT);
-		pictureUri = config.getProperty(CONFIGKEY_LDAP_KEY_PICTURE_URI, null);
+		pictureUri = config.getProperty(CONFIGKEY_LDAP_PICTURE_URI, null);
 		importQuery = config.getProperty(CONFIGKEY_LDAP_IMPORT_QUERY, "(objectClass=*)");
 	}
 }