java.lang.Object
java.lang.Throwable
java.lang.Exception
javax.naming.NamingException
javax.naming.ReferralException
javax.naming.ldap.LdapReferralException
- 所有已实现的接口:
Serializable
此抽象类用于表示 LDAP 引用异常。它通过提供接受请求控制的
getReferralContext() 方法来扩展基础 ReferralException。 LdapReferralException 是一个抽象类。它的具体实现决定了它的同步和序列化属性。
作为参数传递给 getReferralContext() 方法的 Control[] 数组由调用方拥有。服务提供商不会修改数组或保留对它的引用,尽管它可能会保留对数组中单个Control对象的引用。
- 自从:
- 1.3
- 参见:
-
字段摘要
在类 javax.naming.NamingException 中声明的字段
remainingName, resolvedName, resolvedObj, rootException -
构造方法总结
构造方法修饰符构造方法描述protected构造 LdapReferralException 的新实例。protectedLdapReferralException(String explanation) 使用提供的解释构造 LdapReferralException 的新实例。 -
方法总结
修饰符和类型方法描述abstract Context检索上下文,在该上下文中使用上下文的环境而不使用控件继续方法。abstract ContextgetReferralContext(Hashtable<?, ?> env) 使用环境属性而不使用控件检索继续方法的上下文。abstract ContextgetReferralContext(Hashtable<?, ?> env, Control[] reqCtls) 使用请求控件和环境属性检索继续该方法的上下文。在类 javax.naming.ReferralException 中声明的方法
getReferralInfo, retryReferral, skipReferral在类 javax.naming.NamingException 中声明的方法
appendRemainingComponent, appendRemainingName, getCause, getExplanation, getRemainingName, getResolvedName, getResolvedObj, getRootCause, initCause, setRemainingName, setResolvedName, setResolvedObj, setRootCause, toString, toString在类 java.lang.Throwable 中声明的方法
addSuppressed, fillInStackTrace, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, printStackTrace, printStackTrace, printStackTrace, setStackTrace
-
构造方法详细信息
-
LdapReferralException
使用提供的解释构造 LdapReferralException 的新实例。所有其他字段都设置为空。- 参数:
explanation- 有关此异常的其他详细信息。可以为空。- 参见:
-
LdapReferralException
protected LdapReferralException()构造 LdapReferralException 的新实例。所有字段都设置为空。
-
-
方法详情
-
getReferralContext
检索上下文,在该上下文中使用上下文的环境而不使用控件继续方法。引用上下文是使用抛出ReferralException而没有控件的上下文的环境属性创建的。这个方法相当于
其中getReferralContext(ctx.getEnvironment(), null);
ctx是引发ReferralException.的上下文它在此类中被覆盖,仅用于文档目的。有关如何使用此方法的信息,请参阅
ReferralException。- 指定者:
getReferralContext在类ReferralException中- 返回:
- 继续该方法的非空上下文。
- 抛出:
NamingException- 如果遇到命名异常。调用retryReferral()或skipReferral()继续处理推荐。
-
getReferralContext
使用环境属性而不使用控件检索继续方法的上下文。引用上下文是使用env作为其环境属性创建的,没有控件。这个方法相当于
getReferralContext(env, null);
它在此类中被覆盖,仅用于文档目的。有关如何使用此方法的信息,请参阅
ReferralException。- 指定者:
getReferralContext在类ReferralException中- 参数:
env- 检索引用上下文时使用的可能为空的环境。如果为 null,则不会使用任何环境属性。- 返回:
- 继续该方法的非空上下文。
- 抛出:
NamingException- 如果遇到命名异常。调用retryReferral()或skipReferral()继续处理推荐。
-
getReferralContext
public abstract Context getReferralContext(Hashtable <?, ?> env, Control [] reqCtls) throws NamingException使用请求控件和环境属性检索继续该方法的上下文。无论是在上下文操作期间直接遇到引用,还是间接遇到引用,例如在搜索枚举期间,引用异常都应提供继续操作的上下文。要继续操作,客户端程序应使用与原始调用相同的参数重新调用该方法。reqCtls在创建与引用服务的连接时使用。这些控件将用作上下文和从上下文派生的上下文实例的连接请求控件。reqCtls也将是后续上下文操作的上下文请求控件。有关详细信息,请参阅LdapContext类描述。当调用者需要提供请求控件来创建引用上下文时,应该使用此方法而不是其他两种重载形式。它可能需要这样做,例如,当它需要提供与身份验证相关的特殊控制时。
服务提供者实施者应阅读
LdapContext类描述中的“服务提供者”部分以了解实施细节。- 参数:
env- 用于新上下文的可能为 null 的环境属性。如果为 null,则在没有环境属性的情况下初始化上下文。reqCtls- 用于新上下文的可能为空的请求控件。如果为 null 或空数组意味着不使用请求控件。- 返回:
- 继续该方法的非空上下文。
- 抛出:
NamingException- 如果遇到命名异常。调用retryReferral()或skipReferral()继续处理推荐。
-