In AbstractContextSource (parent of LdapContextSource), the Javadoc for the setBase() method says the following:
"Set the base suffix from which all operations should origin. If a base suffix is set, you will not have to (and, indeed, must not) specify the full distinguished names in any operations performed.".
Since you specify the full DN for the userDN, hence you must not specify the base.