2010-10-20 37 views
1

我試圖獲取LDAP實體的模式。我被建議使用Novell的開源LDAP庫,這看起來相當不錯。我找到一個名爲GetAttributeSchema的例子,這聽起來很不錯,但我認爲我得到了一個錯誤的參數集或其他東西。在Java中獲取LDAP模式

我得到的結果是:

ou  (2.5.4.11 NAME ( 'ou' 'organizationalUnitName') DESC 'Standard LDAP attribute type' SUP 'name' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 X-ORIGIN 'RFC 2256') 
objectClass  (2.5.4.0 NAME 'objectClass' DESC 'Standard LDAP attribute type' EQUALITY 'objectIdentifierMatch' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 X-ORIGIN 'RFC 2256 (XXX: syntax should be ...38)') 

我期待的結果是[東西的功效]:

cn 
affiliations 
streetaddress 
phone 
fax 
etc 

只是想知道,如果它是明顯的一個LDAP專家我錯過了什麼,或者我應該問什麼。

謝謝!

==============================

SOLUTION:

ServiceableLDAPConnection lc = takeConnection(); 
LDAPSchema schema = lc.fetchSchema(lc.getSchemaDN()); 
Enumeration<?> enumeration = schema.getAttributeNames(); 

我發現這網站特別有用:http://www.go4expert.com/forums/showthread.php?t=4814

==============================

回答

0

你得到充分的模式定義。通常在cn = schema的LDAP查詢中,您將整個模式作爲一個需要解析的對象。

+0

是的,好的,足夠接近,我會接受它。 – Jim 2010-10-21 06:56:14