Mega Code Archive

 
Categories / Java / JNDI LDAP
 

Performing a Basic Directory Search

import java.util.Hashtable; import javax.naming.Context; import javax.naming.NamingEnumeration; import javax.naming.directory.Attributes; import javax.naming.directory.BasicAttribute; import javax.naming.directory.BasicAttributes; import javax.naming.directory.DirContext; import javax.naming.directory.InitialDirContext; import javax.naming.directory.SearchResult; public class Main {   public static void main(String[] argv) throws Exception {     String[] attrIDs = { "sn", "number", "value", "mail" };     Attributes matchAttrs = new BasicAttributes(true);      matchAttrs.put(new BasicAttribute("sn", "YourName"));     matchAttrs.put(new BasicAttribute("mail"));     Object obj = "yourObject";     Hashtable<String, String> env = new Hashtable<String, String>();     env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");     env.put(Context.PROVIDER_URL, "yourURL");     DirContext ctx = new InitialDirContext(env);     NamingEnumeration e = ctx.search("ou=People", matchAttrs, attrIDs);     while (e.hasMore()) {       SearchResult entry = (SearchResult) e.next();       System.out.println(entry.getName());     }   } }