Java教程是针对JDK 8编写的。本页中描述的示例和实践不利用后续版本中引入的改进,并且可能使用不再可用的技术。
有关Java SE 9及后续版本中更新的语言功能的摘要,请参阅Java语言变更。
有关所有JDK版本的新功能、增强功能以及已删除或不推荐选项的信息,请参阅JDK发布说明。
LDAP定义了一组与LDAP服务器发送的LDAP响应一起返回的状态码(参见RFC 2251)。在JNDI中,错误条件被表示为NamingException的子类的检查异常。请参阅Naming Exceptions部分,了解JNDI异常类的概述。
LDAP服务提供程序将从LDAP服务器接收到的LDAP状态码转换为适当的NamingException子类。以下表格显示了LDAP状态码和JNDI异常之间的映射关系。
NamingExceptionCommunicationExceptionTimeLimitExceededExceptionSizeLimitExceededExceptionDirContext.search()DirContext.search()AuthenticationNotSupportedExceptionAuthenticationNotSupportedException"java.naming.referral""ignore"PartialResultException"java.naming.referral""ignore""throw"ReferralException"follow""java.naming.ldap.referral.limit"LimitExceededExceptionLimitExceededExceptionOperationNotSupportedExceptionAuthenticationNotSupportedExceptionNoSuchAttributeExceptionInvalidAttributeIdentifierExceptionInvalidSearchFilterExceptionInvalidAttributeValueExceptionAttributeInUseExceptionInvalidAttributeValueExceptionNameNotFoundExceptionNamingExceptionInvalidNameExceptionNamingExceptionAuthenticationNotSupportedExceptionAuthenticationExceptionNoPermissionExceptionServiceUnavailableExceptionServiceUnavailableExceptionOperationNotSupportedExceptionNamingExceptionInvalidNameExceptionSchemaViolationExceptionContextNotEmptyExceptionSchemaViolationExceptionNameAlreadyBoundExceptionSchemaViolationExceptionNamingExceptionNamingException