mirror of
https://github.com/fofolee/uTools-Manuals.git
synced 2025-07-03 23:32:47 +08:00
364 lines
19 KiB
HTML
364 lines
19 KiB
HTML
<div class="header">
|
||
<div class="subTitle">
|
||
compact3
|
||
</div>
|
||
<div class="subTitle">
|
||
javax.naming
|
||
</div>
|
||
<h2 class="title" title="Class ReferralException">Class ReferralException</h2>
|
||
</div><div class="contentContainer">
|
||
<ul class="inheritance">
|
||
<li><a href="../../java/lang/Object.html" title="class in java.lang">java.lang.Object</a></li>
|
||
<li>
|
||
<ul class="inheritance">
|
||
<li><a href="../../java/lang/Throwable.html" title="class in java.lang">java.lang.Throwable</a></li>
|
||
<li>
|
||
<ul class="inheritance">
|
||
<li><a href="../../java/lang/Exception.html" title="class in java.lang">java.lang.Exception</a></li>
|
||
<li>
|
||
<ul class="inheritance">
|
||
<li><a href="../../javax/naming/NamingException.html" title="class in javax.naming">javax.naming.NamingException</a></li>
|
||
<li>
|
||
<ul class="inheritance">
|
||
<li>javax.naming.ReferralException</li>
|
||
</ul> </li>
|
||
</ul> </li>
|
||
</ul> </li>
|
||
</ul> </li>
|
||
</ul>
|
||
<div class="description">
|
||
<ul class="blockList">
|
||
<li class="blockList">
|
||
<dl>
|
||
<dt>
|
||
All Implemented Interfaces:
|
||
</dt>
|
||
<dd>
|
||
<span><a href="../../java/io/Serializable.html" title="java.io中的接口">Serializable</a></span>
|
||
</dd>
|
||
</dl>
|
||
<dl>
|
||
<dt>
|
||
已知直接子类:
|
||
</dt>
|
||
<dd>
|
||
<span><a href="../../javax/naming/ldap/LdapReferralException.html" title="javax.naming.ldap中的类">LdapReferralException</a></span>
|
||
</dd>
|
||
</dl>
|
||
<hr/> <br/> <pre>public abstract class <span class="typeNameLabel">ReferralException</span>
|
||
extends <a href="../../javax/naming/NamingException.html" title="class in javax.naming">NamingException</a></pre>
|
||
<div class="block">
|
||
<span>此抽象类用于表示引用异常,该引用异常是响应于LDAP v3服务器返回的<em>引用</em>而生成的。</span>
|
||
<p> <span>服务提供商通过提供<tt>getReferralInfo()</tt>和<tt>getReferralContext()</tt> (以及适当的构造函数和/或相应的“设置”方法)的<tt>实现</tt>来提供<tt>ReferralException</tt>的子类。</span> </p>
|
||
<p> <span>以下代码示例显示了如何使用<tt>ReferralException</tt> 。</span> </p>
|
||
<blockquote>
|
||
<span><code>while (true) { try { bindings = ctx.listBindings(name); while (bindings.hasMore()) { b = bindings.next(); ... } break; } catch (ReferralException e) { ctx = e.getReferralContext(); } } </code></span>
|
||
</blockquote>
|
||
<p> <span><tt>ReferralException</tt>是一个抽象类。</span> <span>具体实现确定其同步和序列化属性。</span> </p>
|
||
<p> <span>传递给<tt>getReferralContext()</tt>方法的环境参数由调用者拥有。</span> <span>服务提供商不会修改对象或保留对它的引用,但可以保留对其的克隆的引用。</span> </p>
|
||
</div>
|
||
<dl>
|
||
<dt>
|
||
<span class="simpleTagLabel">从以下版本开始:</span>
|
||
</dt>
|
||
<dd>
|
||
1.3
|
||
</dd>
|
||
<dt>
|
||
<span class="seeLabel">另请参见:</span>
|
||
</dt>
|
||
<dd>
|
||
<a href="../../serialized-form.html#javax.naming.ReferralException">Serialized Form</a>
|
||
</dd>
|
||
</dl> </li>
|
||
</ul>
|
||
</div>
|
||
<div class="summary">
|
||
<ul class="blockList">
|
||
<li class="blockList">
|
||
<!-- =========== FIELD SUMMARY =========== -->
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="field.summary">
|
||
<!-- --> </a> <h3>Field Summary</h3>
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="fields.inherited.from.class.javax.naming.NamingException">
|
||
<!-- --> </a> <h3>Fields inherited from class javax.naming.<a href="../../javax/naming/NamingException.html" title="class in javax.naming">NamingException</a></h3> <code><a href="../../javax/naming/NamingException.html#remainingName">remainingName</a>, <a href="../../javax/naming/NamingException.html#resolvedName">resolvedName</a>, <a href="../../javax/naming/NamingException.html#resolvedObj">resolvedObj</a>, <a href="../../javax/naming/NamingException.html#rootException">rootException</a></code></li>
|
||
</ul> </li>
|
||
</ul>
|
||
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="constructor.summary">
|
||
<!-- --> </a> <h3>构造方法摘要</h3>
|
||
<table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Constructor Summary table, listing constructors, and an explanation">
|
||
<caption>
|
||
<span>构造方法</span>
|
||
<span class="tabEnd"> </span>
|
||
</caption>
|
||
<tbody>
|
||
<tr>
|
||
<th class="colFirst" scope="col">Modifier</th>
|
||
<th class="colLast" scope="col">Constructor and Description</th>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><code>protected </code></td>
|
||
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/naming/ReferralException.html#ReferralException--">ReferralException</a></span>()</code>
|
||
<div class="block">
|
||
构造一个新的ReferralException实例。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><code>protected </code></td>
|
||
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/naming/ReferralException.html#ReferralException-java.lang.String-">ReferralException</a></span>(<a href="../../java/lang/String.html" title="class in java.lang">String</a> explanation)</code>
|
||
<div class="block">
|
||
使用提供的说明构造一个新的ReferralException实例。
|
||
</div> </td>
|
||
</tr>
|
||
</tbody>
|
||
</table> </li>
|
||
</ul>
|
||
<!-- ========== METHOD SUMMARY =========== -->
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="method.summary">
|
||
<!-- --> </a> <h3>方法摘要</h3>
|
||
<table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Method Summary table, listing methods, and an explanation">
|
||
<caption>
|
||
<span class="activeTableTab" id="t0"><span>所有方法</span><span class="tabEnd"> </span></span>
|
||
<span class="tableTab" id="t2"><span><a href="javascript:show(2);">接口方法</a></span><span class="tabEnd"> </span></span>
|
||
<span class="tableTab" id="t3"><span><a href="javascript:show(4);">抽象方法</a></span><span class="tabEnd"> </span></span>
|
||
</caption>
|
||
<tbody>
|
||
<tr>
|
||
<th class="colFirst" scope="col">Modifier and Type</th>
|
||
<th class="colLast" scope="col">Method and Description</th>
|
||
</tr>
|
||
<tr class="altColor" id="i0">
|
||
<td class="colFirst"><code>abstract <a href="../../javax/naming/Context.html" title="interface in javax.naming">Context</a></code></td>
|
||
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/naming/ReferralException.html#getReferralContext--">getReferralContext</a></span>()</code>
|
||
<div class="block">
|
||
检索继续该方法的上下文。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor" id="i1">
|
||
<td class="colFirst"><code>abstract <a href="../../javax/naming/Context.html" title="interface in javax.naming">Context</a></code></td>
|
||
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/naming/ReferralException.html#getReferralContext-java.util.Hashtable-">getReferralContext</a></span>(<a href="../../java/util/Hashtable.html" title="class in java.util">Hashtable</a><?,?> env)</code>
|
||
<div class="block">
|
||
检索使用环境属性继续该方法的上下文。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor" id="i2">
|
||
<td class="colFirst"><code>abstract <a href="../../java/lang/Object.html" title="class in java.lang">Object</a></code></td>
|
||
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/naming/ReferralException.html#getReferralInfo--">getReferralInfo</a></span>()</code>
|
||
<div class="block">
|
||
检索与此推介相关的信息(如URL)。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor" id="i3">
|
||
<td class="colFirst"><code>abstract void</code></td>
|
||
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/naming/ReferralException.html#retryReferral--">retryReferral</a></span>()</code>
|
||
<div class="block">
|
||
重试目前正在处理的推介。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor" id="i4">
|
||
<td class="colFirst"><code>abstract boolean</code></td>
|
||
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/naming/ReferralException.html#skipReferral--">skipReferral</a></span>()</code>
|
||
<div class="block">
|
||
丢弃有待处理的转介。
|
||
</div> </td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="methods.inherited.from.class.javax.naming.NamingException">
|
||
<!-- --> </a> <h3>Methods inherited from class javax.naming.<a href="../../javax/naming/NamingException.html" title="class in javax.naming">NamingException</a></h3> <code><a href="../../javax/naming/NamingException.html#appendRemainingComponent-java.lang.String-">appendRemainingComponent</a>, <a href="../../javax/naming/NamingException.html#appendRemainingName-javax.naming.Name-">appendRemainingName</a>, <a href="../../javax/naming/NamingException.html#getCause--">getCause</a>, <a href="../../javax/naming/NamingException.html#getExplanation--">getExplanation</a>, <a href="../../javax/naming/NamingException.html#getRemainingName--">getRemainingName</a>, <a href="../../javax/naming/NamingException.html#getResolvedName--">getResolvedName</a>, <a href="../../javax/naming/NamingException.html#getResolvedObj--">getResolvedObj</a>, <a href="../../javax/naming/NamingException.html#getRootCause--">getRootCause</a>, <a href="../../javax/naming/NamingException.html#initCause-java.lang.Throwable-">initCause</a>, <a href="../../javax/naming/NamingException.html#setRemainingName-javax.naming.Name-">setRemainingName</a>, <a href="../../javax/naming/NamingException.html#setResolvedName-javax.naming.Name-">setResolvedName</a>, <a href="../../javax/naming/NamingException.html#setResolvedObj-java.lang.Object-">setResolvedObj</a>, <a href="../../javax/naming/NamingException.html#setRootCause-java.lang.Throwable-">setRootCause</a>, <a href="../../javax/naming/NamingException.html#toString--">toString</a>, <a href="../../javax/naming/NamingException.html#toString-boolean-">toString</a></code></li>
|
||
</ul>
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Throwable">
|
||
<!-- --> </a> <h3>Methods inherited from class java.lang.<a href="../../java/lang/Throwable.html" title="class in java.lang">Throwable</a></h3> <code><a href="../../java/lang/Throwable.html#addSuppressed-java.lang.Throwable-">addSuppressed</a>, <a href="../../java/lang/Throwable.html#fillInStackTrace--">fillInStackTrace</a>, <a href="../../java/lang/Throwable.html#getLocalizedMessage--">getLocalizedMessage</a>, <a href="../../java/lang/Throwable.html#getMessage--">getMessage</a>, <a href="../../java/lang/Throwable.html#getStackTrace--">getStackTrace</a>, <a href="../../java/lang/Throwable.html#getSuppressed--">getSuppressed</a>, <a href="../../java/lang/Throwable.html#printStackTrace--">printStackTrace</a>, <a href="../../java/lang/Throwable.html#printStackTrace-java.io.PrintStream-">printStackTrace</a>, <a href="../../java/lang/Throwable.html#printStackTrace-java.io.PrintWriter-">printStackTrace</a>, <a href="../../java/lang/Throwable.html#setStackTrace-java.lang.StackTraceElement:A-">setStackTrace</a></code></li>
|
||
</ul>
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
|
||
<!-- --> </a> <h3>Methods inherited from class java.lang.<a href="../../java/lang/Object.html" title="class in java.lang">Object</a></h3> <code><a href="../../java/lang/Object.html#clone--">clone</a>, <a href="../../java/lang/Object.html#equals-java.lang.Object-">equals</a>, <a href="../../java/lang/Object.html#finalize--">finalize</a>, <a href="../../java/lang/Object.html#getClass--">getClass</a>, <a href="../../java/lang/Object.html#hashCode--">hashCode</a>, <a href="../../java/lang/Object.html#notify--">notify</a>, <a href="../../java/lang/Object.html#notifyAll--">notifyAll</a>, <a href="../../java/lang/Object.html#wait--">wait</a>, <a href="../../java/lang/Object.html#wait-long-">wait</a>, <a href="../../java/lang/Object.html#wait-long-int-">wait</a></code></li>
|
||
</ul> </li>
|
||
</ul> </li>
|
||
</ul>
|
||
</div>
|
||
<div class="details">
|
||
<ul class="blockList">
|
||
<li class="blockList">
|
||
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="constructor.detail">
|
||
<!-- --> </a> <h3>构造方法详细信息</h3> <a name="ReferralException-java.lang.String-">
|
||
<!-- --> </a>
|
||
<ul class="blockList">
|
||
<li class="blockList"> <h4>ReferralException</h4> <pre>protected ReferralException(<a href="../../java/lang/String.html" title="class in java.lang">String</a> explanation)</pre>
|
||
<div class="block">
|
||
<span>使用提供的说明构造一个新的ReferralException实例。</span>
|
||
<span>所有其他字段都设置为null。</span>
|
||
</div>
|
||
<dl>
|
||
<dt>
|
||
<span class="paramLabel">参数</span>
|
||
</dt>
|
||
<dd>
|
||
<span><code>explanation</code> - 有关此异常的其他详细信息。</span>
|
||
<span>可以为null。</span>
|
||
</dd>
|
||
<dt>
|
||
<span class="seeLabel">另请参见:</span>
|
||
</dt>
|
||
<dd>
|
||
<a href="../../java/lang/Throwable.html#getMessage--"><code>Throwable.getMessage()</code></a>
|
||
</dd>
|
||
</dl> </li>
|
||
</ul> <a name="ReferralException--">
|
||
<!-- --> </a>
|
||
<ul class="blockListLast">
|
||
<li class="blockList"> <h4>ReferralException</h4> <pre>protected ReferralException()</pre>
|
||
<div class="block">
|
||
<span>构造一个新的ReferralException实例。</span>
|
||
<span>所有字段都设置为null。</span>
|
||
</div> </li>
|
||
</ul> </li>
|
||
</ul>
|
||
<!-- ============ METHOD DETAIL ========== -->
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="method.detail">
|
||
<!-- --> </a> <h3>方法详细信息</h3> <a name="getReferralInfo--">
|
||
<!-- --> </a>
|
||
<ul class="blockList">
|
||
<li class="blockList"> <h4>getReferralInfo</h4> <pre>public abstract <a href="../../java/lang/Object.html" title="class in java.lang">Object</a> getReferralInfo()</pre>
|
||
<div class="block">
|
||
<span>检索与此推介相关的信息(如URL)。</span>
|
||
<span>该程序可以检查或显示此信息给用户以确定是否继续转诊,或确定需要提供的其他信息以继续转介。</span>
|
||
</div>
|
||
<dl>
|
||
<dt>
|
||
<span class="returnLabel">结果</span>
|
||
</dt>
|
||
<dd>
|
||
与此推荐相关的非空介绍信息。
|
||
</dd>
|
||
</dl> </li>
|
||
</ul> <a name="getReferralContext--">
|
||
<!-- --> </a>
|
||
<ul class="blockList">
|
||
<li class="blockList"> <h4>getReferralContext</h4> <pre>public abstract <a href="../../javax/naming/Context.html" title="interface in javax.naming">Context</a> getReferralContext()
|
||
throws <a href="../../javax/naming/NamingException.html" title="class in javax.naming">NamingException</a></pre>
|
||
<div class="block">
|
||
<span>检索继续该方法的上下文。</span>
|
||
<span>无论在上下文操作期间是直接遇到转介,还是间接地,例如在搜索枚举期间,引用异常应提供继续操作的上下文。</span>
|
||
<span>引用上下文是使用引用ReferralException的上下文的环境属性创建的。</span>
|
||
<p> <span>要继续操作,客户端程序应该使用与原始调用相同的参数重新调用该方法。</span> </p>
|
||
</div>
|
||
<dl>
|
||
<dt>
|
||
<span class="returnLabel">结果</span>
|
||
</dt>
|
||
<dd>
|
||
用于继续该方法的非空上下文。
|
||
</dd>
|
||
<dt>
|
||
<span class="throwsLabel">异常</span>
|
||
</dt>
|
||
<dd>
|
||
<span><code><a href="../../javax/naming/NamingException.html" title="class in javax.naming">NamingException</a></code> - 如果遇到命名异常。</span>
|
||
<span>致电<tt>retryReferral()</tt>或<tt>skipReferral()</tt>以继续处理转介。</span>
|
||
</dd>
|
||
</dl> </li>
|
||
</ul> <a name="getReferralContext-java.util.Hashtable-">
|
||
<!-- --> </a>
|
||
<ul class="blockList">
|
||
<li class="blockList"> <h4>getReferralContext</h4> <pre>public abstract <a href="../../javax/naming/Context.html" title="interface in javax.naming">Context</a> getReferralContext(<a href="../../java/util/Hashtable.html" title="class in java.util">Hashtable</a><?,?> env)
|
||
throws <a href="../../javax/naming/NamingException.html" title="class in javax.naming">NamingException</a></pre>
|
||
<div class="block">
|
||
<span>检索使用环境属性继续该方法的上下文。</span>
|
||
<span>无论在上下文操作期间是直接遇到转介,还是间接地,例如在搜索枚举期间,引用异常应提供继续操作的上下文。</span>
|
||
<p> <span>引用上下文是使用<tt>env</tt>作为其环境属性创建的。</span> <span>当调用者需要为引用上下文使用不同的环境属性时,应该使用此方法而不是无参数重载的形式。</span> <span>它可能需要这样做,例如,当需要向引用的服务器提供不同的身份验证信息以创建引用上下文。</span> </p>
|
||
<p> <span>要继续操作,客户端程序应该使用与原始调用相同的参数重新调用该方法。</span> </p>
|
||
</div>
|
||
<dl>
|
||
<dt>
|
||
<span class="paramLabel">参数</span>
|
||
</dt>
|
||
<dd>
|
||
<span><code>env</code> - 检索引荐上下文时可能使用的空闲环境。</span>
|
||
<span>如果为空,则不会使用环境属性。</span>
|
||
</dd>
|
||
<dt>
|
||
<span class="returnLabel">结果</span>
|
||
</dt>
|
||
<dd>
|
||
用于继续该方法的非空上下文。
|
||
</dd>
|
||
<dt>
|
||
<span class="throwsLabel">异常</span>
|
||
</dt>
|
||
<dd>
|
||
<span><code><a href="../../javax/naming/NamingException.html" title="class in javax.naming">NamingException</a></code> - 如果遇到命名异常。</span>
|
||
<span>致电<tt>retryReferral()</tt>或<tt>skipReferral()</tt>以继续处理转介。</span>
|
||
</dd>
|
||
</dl> </li>
|
||
</ul> <a name="skipReferral--">
|
||
<!-- --> </a>
|
||
<ul class="blockList">
|
||
<li class="blockList"> <h4>skipReferral</h4> <pre>public abstract boolean skipReferral()</pre>
|
||
<div class="block">
|
||
<span>丢弃有待处理的转介。</span>
|
||
<span>调用此方法之后应该调用<code>getReferralContext</code>以允许处理其他引用继续。</span>
|
||
<span>以下代码片段显示了典型的使用模式。</span>
|
||
<blockquote>
|
||
<span><pre>
|
||
} catch (ReferralException e) {
|
||
if (!shallIFollow(e.getReferralInfo())) {
|
||
if (!e.skipReferral()) {
|
||
return;
|
||
}
|
||
}
|
||
ctx = e.getReferralContext();
|
||
}
|
||
</pre></span>
|
||
</blockquote>
|
||
</div>
|
||
<dl>
|
||
<dt>
|
||
<span class="returnLabel">结果</span>
|
||
</dt>
|
||
<dd>
|
||
<span>如果更多的转诊处理正在等待;</span>
|
||
<span>否则为假。</span>
|
||
</dd>
|
||
</dl> </li>
|
||
</ul> <a name="retryReferral--">
|
||
<!-- --> </a>
|
||
<ul class="blockListLast">
|
||
<li class="blockList"> <h4>retryReferral</h4> <pre>public abstract void retryReferral()</pre>
|
||
<div class="block">
|
||
<span>重试目前正在处理的推介。</span>
|
||
<span>调用此方法之后应该调用<code>getReferralContext</code>以允许重试当前的引用。</span>
|
||
<span>以下代码片段显示了典型的使用模式。</span>
|
||
<blockquote>
|
||
<span><pre>
|
||
} catch (ReferralException e) {
|
||
while (true) {
|
||
try {
|
||
ctx = e.getReferralContext(env);
|
||
break;
|
||
} catch (NamingException ne) {
|
||
if (! shallIRetry()) {
|
||
return;
|
||
}
|
||
// modify environment properties (env), if necessary
|
||
e.retryReferral();
|
||
}
|
||
}
|
||
}
|
||
</pre></span>
|
||
</blockquote>
|
||
</div> </li>
|
||
</ul> </li>
|
||
</ul> </li>
|
||
</ul>
|
||
</div>
|
||
</div> |