//////////////////////////////////////////////////////////////////
后来我又抄了一个测试程序——SearchLDAP.java,出现同样的问题:
Error:Cannot instantiate class: com.sun.jndi.ldap.LdapCtxFactory
代码如下:
import javax.naming.directory.*;
import javax.naming.*;
import java.util.Vector;
import java.util.Enumeration;
import java.util.Properties;public class SearchLDAP{
public static void main(String[] args){
String base="";
String filter="(objectcass=*)";
Properties env=new Properties();
env.put(DirContext.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.ldap.LdapCtxFactory");
env.put(DirContext.PROVIDER_URL,"ldap://rambles:389"); try{
DirContext dc=new InitialDirContext(env);
SearchControls sc=new SearchControls();
sc.setSearchScope(SearchControls.OBJECT_SCOPE); NamingEnumeration ne = null;
ne = dc.search(base,filter,sc); while(ne.hasMore()){
SearchResult sr = (SearchResult)ne.next();
System.out.println(sr.toString()+"\n");
dc.close();
}
}catch(NamingException nex){
System.err.println("Error:"+nex.getMessage());
}
}
}