JavaTM 2 Platform
Standard Ed. 6

javax.naming.ldap
類別 LdapReferralException

java.lang.Object
  繼承者 java.lang.Throwable
      繼承者 java.lang.Exception
          繼承者 javax.naming.NamingException
              繼承者 javax.naming.ReferralException
                  繼承者 javax.naming.ldap.LdapReferralException
所有已實作的介面:
Serializable

public abstract class LdapReferralException
extends ReferralException

此抽象類別用於表示 LDAP 參考異常。它通過提供接受請求控制元件的 getReferralContext() 方法擴展基礎 ReferralException。LdapReferralException 是一個抽象類別。它具體的實作確定其同步和序列化屬性。

作為參數傳遞給 getReferralContext() 方法的 Control[] 陣列為調用者所有。服務提供者將不修改陣列,也不保持對它的參考,但它可能保持對陣列中個別 Control 物件的參考。

從以下版本開始:
1.3
另請參見:
序列化表格

欄位摘要
 
從類別 javax.naming.NamingException 繼承的欄位
remainingName, resolvedName, resolvedObj, rootException
 
建構子摘要
protected LdapReferralException()
          建構一個新的 LdapReferralException 實例。
protected LdapReferralException(String explanation)
          使用所提供的解釋建構一個新的 LdapReferralException 實例。
 
方法摘要
abstract  Context getReferralContext()
          使用上下文的環境(但不使用控制元件)檢索繼續該方法的上下文。
abstract  Context getReferralContext(Hashtable<?,?> env)
          使用環境屬性(但不使用控制元件)檢索繼續該方法的上下文。
abstract  Context getReferralContext(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 繼承的方法
fillInStackTrace, getLocalizedMessage, getMessage, getStackTrace, printStackTrace, printStackTrace, printStackTrace, setStackTrace
 
從類別 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

建構子詳細資訊

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

指定者:
類別 ReferralException 中的 getReferralContext
返回:
將繼續該方法的非 null 上下文。
拋出:
NamingException - 如果遇到命名異常。調用 retryReferral()skipReferral() 來繼續處理這些參考。

getReferralContext

public abstract Context getReferralContext(Hashtable<?,?> env)
                                    throws NamingException
使用環境屬性(但不使用控制元件)檢索繼續該方法的上下文。使用 env 作為其環境屬性(但不使用控制元件)創建參考上下文。

該方法等效於

 getReferralContext(env, null);

在此類別中覆寫該方法僅出於文檔編製目的。有關使用此方法的方式,請參閱 ReferralException

指定者:
類別 ReferralException 中的 getReferralContext
參數:
env - 檢索參考上下文時要使用的環境(可能為 null)。如果為 null,則不使用環境屬性。
返回:
將繼續該方法的非 null 上下文。
拋出:
NamingException - 如果遇到命名異常。調用 retryReferral()skipReferral() 來繼續處理這些參考。

getReferralContext

public abstract Context getReferralContext(Hashtable<?,?> env,
                                           Control[] reqCtls)
                                    throws NamingException
使用請求控制元件和環境屬性檢索繼續該方法的上下文。不管在上下文操作期間(例如在搜尋列舉期間)是否直接或間接地遇到某一參考,參考異常都應該提供一個繼續該操作的上下文。要繼續該操作,客戶端程序應該使用與初始調用相同的參數重新調用該方法。

reqCtls 在創建到參考的伺服器的連接時使用。這些控制元件將用作上下文和從上下文派生的上下文實例的連接請求控制元件。reqCtls 同時還是後續上下文操作的上下文請求控制元件。有關詳細資訊,請參閱 LdapContext 類別描述。

當調用者需要提供請求控制元件來創建參考上下文時,應該使用此方法,而不是其他兩個重載形式。例如,當需要提供與驗證有關的特殊控制元件時,它可能這樣做。

服務提供者的實作方應該參閱 LdapContext 類別描述中的 "Service Provider" 一節,以獲取實作的詳細資訊。

參數:
reqCtls - 要用於新上下文的請求控制元件(可能為 null)。如果 null 或空陣列意味著不使用任何請求控制元件。
env - 要用於新上下文的環境屬性(可能為 null)。如果為 null,則不使用任何環境屬性初始化上下文。
返回:
將繼續該方法的非 null 上下文。
拋出:
NamingException - 如果遇到命名異常。調用 retryReferral()skipReferral() 來繼續處理這些參考。

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only