Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Jul 18th, 2012  |  syntax: None  |  size: 1.86 KB  |  hits: 24  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. JNDI in Matlab, Exception when searching LDAP
  2. javax.naming.PartialResultException: [LDAP: error code 10 - 0000202B: RefErr: DSID-03100742, data 0, 1 access points
  3. ref 1: 'de.company.com'
  4. ]; remaining name 'DC=de,DC=company,DC=com'
  5.  
  6. at com.sun.jndi.ldap.LdapCtx.processReturnCode(Unknown Source)
  7.  
  8. at com.sun.jndi.ldap.LdapCtx.processReturnCode(Unknown Source)
  9.  
  10. at com.sun.jndi.ldap.LdapCtx.searchAux(Unknown Source)
  11.  
  12. at com.sun.jndi.ldap.LdapCtx.c_search(Unknown Source)
  13.  
  14. at com.sun.jndi.toolkit.ctx.ComponentDirContext.p_search(Unknown Source)
  15.  
  16. at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(Unknown Source)
  17.  
  18. at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(Unknown Source)
  19.  
  20. at javax.naming.directory.InitialDirContext.search(Unknown Source)
  21.  
  22.  
  23. Error in ==> getDepartment at 6
  24. if results.hasMore();
  25.        
  26. function [dctx, sc] = ldapLogin(curUser, pwd)
  27.  
  28. env = java.util.Hashtable();
  29. sp = 'com.sun.jndi.ldap.LdapCtxFactory';
  30. env.put(javax.naming.Context.INITIAL_CONTEXT_FACTORY, sp);
  31. ldapUrl = 'ldap://company.com:389';
  32.  
  33. env.put(javax.naming.Context.PROVIDER_URL, ldapUrl);
  34. env.put(javax.naming.Context.SECURITY_AUTHENTICATION, 'simple');
  35. env.put(javax.naming.Context.SECURITY_PRINCIPAL, ['CN=' curUser ',OU='upper(curUser(1)) ',OU=Useraccounts,OU=Abt,DC=de,DC=company,DC=com']);
  36. env.put(javax.naming.Context.SECURITY_CREDENTIALS, pwd);
  37. dctx = javax.naming.directory.InitialLdapContext(env, []);
  38. sc = javax.naming.directory.SearchControls();
  39. attributeFilter = {'department'};
  40. sc.setReturningAttributes(attributeFilter);
  41. sc.setSearchScope(javax.naming.directory.SearchControls.SUBTREE_SCOPE);
  42.        
  43. function result = getDepartment(user,dctx,sc)
  44.  
  45. base = 'DC=de,DC=company,DC=com';
  46. filter = sprintf('(| (cn=%s) (cn=%s))', lower(user), upper(user));
  47. results = dctx.search(base, filter, sc);
  48. if results.hasMore();
  49.     result = results.next();
  50. else
  51.     result = '';
  52. end
  53. dctx.close();