模块  java.naming
软件包  javax.naming.ldap

Class LdapReferralException

  • 实现的所有接口
    Serializable

    public abstract class LdapReferralException
    extends ReferralException
    此抽象类用于表示LDAP引用异常。 它通过提供接受请求控件的getReferralContext()方法扩展了基础ReferralException LdapReferralException是一个抽象类。 它的具体实现确定了它的同步和序列化属性。

    作为参数传递给getReferralContext()方法的Control[]数组由调用者拥有。 服务提供者不会修改数组或保留对它的引用,尽管它可能会保留对数组中单个Control对象的引用。

    从以下版本开始:
    1.3
    另请参见:
    Serialized Form
    • 构造方法详细信息

      • LdapReferralException

        protected LdapReferralException​(String explanation)
        使用提供的解释构造LdapReferralException的新实例。 所有其他字段都设置为null。
        参数
        explanation - 有关此异常的其他详细信息。 可以为null。
        另请参见:
        Throwable.getMessage()
      • LdapReferralException

        protected LdapReferralException()
        构造LdapReferralException的新实例。 所有字段都设置为null。
    • 方法详细信息

      • getReferralContext

        public abstract Context getReferralContext()
                                            throws NamingException
        使用上下文的环境检索继续该方法的上下文,而不是控件。 引用上下文是使用抛出ReferralException且没有控件的上下文的环境属性创建的。

        这种方法相当于

         getReferralContext(ctx.getEnvironment(), null);
        
        其中ctx是抛出ReferralException.的上下文

        它仅在文档中被覆盖,仅用于文档目的。 有关如何使用此方法,请参阅ReferralException

        Specified by:
        getReferralContext在类 ReferralException
        结果
        要继续该方法的非null上下文。
        异常
        NamingException - 如果遇到命名异常。 请致电retryReferral()skipReferral()继续处理推荐。
      • getReferralContext

        public abstract Context getReferralContext​(Hashtable<?,​?> env)
                                            throws NamingException
        使用环境属性检索继续该方法的上下文,而不使用任何控件。 使用env作为其环境属性并且没有控件创建引用上下文。

        这种方法相当于

         getReferralContext(env, null);
        

        它仅在文档中被覆盖,仅用于文档目的。 有关如何使用此方法,请参阅ReferralException

        Specified by:
        getReferralContext在类 ReferralException
        参数
        env - 检索引用上下文时可能使用的null环境。 如果为null,则不使用任何环境属性。
        结果
        要继续该方法的非null上下文。
        异常
        NamingException - 如果遇到命名异常。 请致电retryReferral()skipReferral()继续处理推荐。
      • getReferralContext

        public abstract Context getReferralContext​(Hashtable<?,​?> env,
                                                   Control[] reqCtls)
                                            throws NamingException
        使用请求控件和环境属性检索继续该方法的上下文。 无论是在上下文操作期间直接遇到引用,还是间接地(例如,在搜索枚举期间),引用异常都应提供继续操作的上下文。 要继续操作,客户端程序应使用与原始调用相同的参数重新调用该方法。

        创建与引用服务器的连接时使用reqCtls 这些控件将用作从上下文派生的上下文和上下文实例的连接请求控件。 reqCtls也将是后续上下文操作的上下文请求控件。 有关详细信息,请参阅LdapContext类说明。

        当调用者需要提供用于创建引用上下文的请求控件时,应该使用此方法而不是其他两个重载的表单。 它可能需要这样做,例如,当它需要提供与身份验证相关的特殊控制时。

        服务提供者实现者应阅读LdapContext类描述中的“服务提供者”部分以获取实现细节。

        参数
        reqCtls - 可能为null的请求控件用于新上下文。 如果为null或空数组表示不使用请求控件。
        env - 新上下文时可能使用的null环境属性。 如果为null,则初始化上下文而不包含环境属性。
        结果
        要继续该方法的非null上下文。
        异常
        NamingException - 如果遇到命名异常。 请致电retryReferral()skipReferral()继续处理推荐。