I am trying to use the Custom User Integration for users by using the JDBCUserProvider. The username, name ,email columns are overwriten by the following properties.
usernameField = user_name
nameField = first_name
emailField = cl_email
The code has a bug which prevents it finding the user from custom DB column names. Below is the corrected code from JDBCUserProvider findUsers method.
StringBuilder sql = new StringBuilder(90);
sql.append(searchSQL);
boolean first = true;
if (fields.contains("Username")) {
sql.append(" ").append(usernameField).append(" LIKE ?");
queries++;
first = false;
}
if (fields.contains("Name")) {
if (!first) {
sql.append(" AND");
}
sql.append(" ").append(nameField).append(" LIKE ?");
queries++;
first = false;
}
if (fields.contains("Email")) {
if (!first) {
sql.append(" AND");
}
sql.append(" ").append(emailField).append(" LIKE ?");
queries++;
}
Thanks,
vinay