iPlanet과 JNDI를 이용해서 Entry를 하나 Add시키려고 하는데요.
실행시키면 에러는 발생하지 않는데 한없이 기다리기만 하네요..
뭐가 잘못된 건가요?
답변 부탁드립니다.. ㅠ.ㅠ
import javax.naming.*;
import javax.naming.Context;
import javax.naming.directory.*;
import javax.naming.NamingException;
import java.util.*;
import java.io.*;
public class AddEntry {
// 환경 변수 세팅
private static final String HOST = "ldap://localhost:389";
private static final String DN = "cn=admin,dc=ssu,dc=ac,dc=kr";
private static final String PW = "password";
public static String SEARCH_BASE = "uid=*,dc=ssu,dc=ac,dc=kr";
public static void main(String[] args)
throws Exception
{
String Dn = new String("uid=spbear,ou=People, dc=ssu,dc=ac,dc=kr");
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");
env.put(Context.PROVIDER_URL, HOST);
env.put(Context.SECURITY_PRINCIPAL, DN);
env.put(Context.SECURITY_PRINCIPAL, PW);
DirContext ctx = new InitialDirContext(env);
Attributes attrs = new BasicAttributes(true);
Attribute objClass = new BasicAttribute("objectclass");
objClass.add("inetOrgPerson");
objClass.add("organizationalPerson");
objClass.add("person");
objClass.add("top");
attrs.put(objClass);
attrs.put(new BasicAttribute("givenName", "BUSEO"));
attrs.put(new BasicAttribute("cn", "Yunhan Kim"));
attrs.put(new BasicAttribute("uid", "spbear"));
attrs.put(new BasicAttribute("sn", "Kim"));
attrs.put(new BasicAttribute("userpassword", "PASS"));
try{
Context result = ctx.createSubcontext(Dn, attrs);
System.out.println(attrs.get("cn").get()+"님 등록 완료되었습니다. " );
System.out.println(attrs.toString());
}catch (Exception ex) {
ex.printStackTrace();
System.out.println("Add Operation Error !");
}
try{
System.out.println("부서 : " + attrs.get("givenname").get());
System.out.println(attrs.toString());
System.out.println("직위 : " + attrs.get("sn").get());
System.out.println(attrs.toString());
System.out.println("사번 : " + attrs.get("uid").get());
System.out.println(attrs.toString());
System.out.println("성명 : " + attrs.get("cn").get());
System.out.println(attrs.toString());
}catch (Exception ex) {
System.out.println("Print Operation Error !");
}
}
}
|