특정 ldap서버를 MS Outlook의 디렉토리 서비스로 등록해서 주소록으로
사용하고 있습니다.
MS Outlook에서는 이름으로 검색해서 메일주소, 조직, 전화번호등이 잘
나옵니다.
이 정보를 제가 만들고 있는 Java Application에서 연동해서 사용하려고 하는데,
잘 안되네요. MS Outlook에서 잘 되는 걸로 봐서는 Java application에서도
그 정보 그대로 접근이 가능할것 같은데 --;;
ldap서버에 알고 있는 정보는 ldap서버 주소밖에 없습니다.
해서.. MS Outlook에서 사용하고 있는 dn이나 검색조건등을 그대로 사용하면,
똑같은 정보를 얻을수 있을것 같은데..
워낙 초보다 보니 아무리 여기저기 뒤지고 문서를 봐도 잘 모르겠습니다.
아래와 같이 java 코드를 실행시키면, 몇몇 cn값만 나오고 description이나 givenname은 안나오는데.. 뭔가 조건을 잘못 준건지.. MS Outlook에서는 서버
주소만 입력하면 잘 조회되던데 --;; 아무래도 ldap.search() 함수의 파라메터
값들을 잘못 준것 같은데... 이름을 주고 mail을 검색하려면 어떻게
해야 하나요??
사용한 java 코드는 다음과 같습니다.
--------------------------------
String[] ATTRS = {"cn", "description","givenname"};
LDAPConnection ldap = new LDAPConnection();
ldap.connect("xxx.xxx.xxx", 389);
LDAPSearchResults res = ldap.search( "" , LDAPConnection.SCOPE_SUB, "objectclass=*", null ,false);
while (res.hasMoreElements()) {
try {
LDAPEntry entry = res.next();
printEntry(entry, ATTRS);
} catch (LDAPReferralException e) {
continue;
} catch (LDAPException e) {
System.out.println(e.toString());
continue;
}
}
|