내가 UnboundID LDAP SDK를 사용하여 ApacheDS에 DIGEST-MD5를 사용하여 바인딩하려고 할 때 다음과 같은 오류를 받고 있어요. UnboundID 및 Apache Shiro와의 간단한 바인드를 사용하여 연결을 이미 테스트 했으므로 ApacheDS가 작동합니다.UnboundID LDAP DIGEST-MD5 바인딩 원인 NPE
LDAPException(resultCode=82 (local error), errorMessage='Unable to create a subsequent DIGEST-MD5 SASL request: NullPointerException(trace='processChallenge(DigestMD5Client.java:339)/evaluateChallenge(DigestMD5Client.java:207)/processSASLBind(SASLHelper.java:149)/process(DIGESTMD5BindRequest.java:406)/bind(LDAPConnection.java:1837)/main(UnboundDemo.java:38)', revision=15579)')
at com.unboundid.ldap.sdk.SASLHelper.processSASLBind(SASLHelper.java:154)
at com.unboundid.ldap.sdk.DIGESTMD5BindRequest.process(DIGESTMD5BindRequest.java:406)
at com.unboundid.ldap.sdk.LDAPConnection.bind(LDAPConnection.java:1837)
at com.mizar.ldap.UnboundDemo.main(UnboundDemo.java:38)
Caused by: java.lang.NullPointerException
at com.sun.security.sasl.digest.DigestMD5Client.processChallenge(DigestMD5Client.java:339)
at com.sun.security.sasl.digest.DigestMD5Client.evaluateChallenge(DigestMD5Client.java:207)
at com.unboundid.ldap.sdk.SASLHelper.processSASLBind(SASLHelper.java:149)
... 3 more
나는 다음과 같이하여 JavaDoc의 예 내 샘플 테스트 코드를 다음 :
이 예외가 아니라 LDAP보다 SASL 처리를 처리하기위한 JDK의 코드에서 발생되는 것 같습니다LDAPConnection conn;
BindResult bindResult;
DIGESTMD5BindRequest mdBind;
try {
conn = new LDAPConnection("1.1.1.1",389);
mdBind = new DIGESTMD5BindRequest("dn:uid=someuser,ou=dev,dc=blah,dc=com", "test");
bindResult = conn.bind(mdBind);
System.out.println("MD5 bind success!");
}
catch (Exception e) {
e.printStackTrace();
}