title: Java ldap authentication issue
body: <p>I'm trying to have my custom java application use our Active Directory Server for authentication but I cannot get it to work for some reason.  Can anyone see why this is?  Here is my method below:</p>
  
  <pre><code>private boolean authenticate(String serverName, String userId, String password) throws NamingException {
      DirContext ctx = null;
      Hashtable env = new Hashtable(11);
      boolean b = false;
      try {
          env.put(Context.INITIAL_CONTEXT_FACTORY,
          "com.sun.jndi.ldap.LdapCtxFactory");
          env.put(Context.PROVIDER_URL, "ldap://servername.org:389");
          env.put(Context.SECURITY_AUTHENTICATION, "simple");
          env.put(Context.SECURITY_PRINCIPAL, "uid="+ userId +",ou=All Users,dc=site,dc=org");
          env.put(Context.SECURITY_CREDENTIALS, password);
          System.out.println("before context");
          // If there isn't a naming exception then the user is authenticated. Return true
          ctx = new InitialDirContext(env);
          //The user is authenticated.
          b = true;
      } catch (NamingException e) {
          System.out.println("the user is not authenticated return false");
          b = false;
      }finally{
          if(ctx != null)
              ctx.close();
      }
      return b;
  }
  </code></pre>
  
  <p>Result:</p>
  
  <pre><code>[12/14/11 16:27:47:746 CST] 0000001f SystemErr     R
  javax.naming.AuthenticationException: [LDAP: error code 49 - 80090308: LdapErr: DSID-0C090334, comment: AcceptSecurityContext error, data 52e, vece
  </code></pre>