Problems binding to LDAP
Hi Guys,
I am having problems trying to bind an object to an OpenLdap server (Fedora Linux). I
connect to the server ok but when I try and bind my object I get the following
error message:
javax.naming.OperationNotSupportedException: [LDAP: error code 53 - no global
superior knowledge]; remaining name 'cn=Current'
Naming exception thrown
Having searched on Google I feel that the problem might be that I
am not telling Ldap where to place my entry, but I'm not sure.
Source code is below:
Any thoughts?
Kevin Wright.
import java.util.*;
import java.io.*;
import javax.naming.*;
import javax.naming.directory.*;
class Robot implements Serializable{
}
public class TestLdap{
public static void main(String[] args){
System.out.println("start");
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,
"com.sun.jndi.ldap.LdapCtxFactory");
env.put(Context.PROVIDER_URL,
"ldap://localhost:389");
env.put(Context.SECURITY_AUTHENTICATION,"simple");
try{
DirContext ctx = new InitialDirContext(env);
// Try to bind something to the name.
//Attributes attrs = new BasicAttributes(true);
//Attribute objclass = new BasicAttribute("objectclass");
//objclass.add("top");
//objclass.add("extensibleobject");
//attrs.put(objclass);
//attrs.put("hobby", "computing");
System.out.println("try and do the bind");
Robot r = new Robot();
ctx.bind("cn=Current", r );
}
catch(NamingException ne){
System.err.println( ne );
System.err.println("Naming exception thrown");
}
}
}