575 lines
41 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<div class="header">
<div class="subTitle">
compact2, compact3
</div>
<div class="subTitle">
javax.xml.validation
</div>
<h2 class="title" title="Class Validator">Class Validator</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>javax.xml.validation.Validator</li>
</ul> </li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr/> <br/> <pre>public abstract class <span class="typeNameLabel">Validator</span>
extends <a href="../../../java/lang/Object.html" title="class in java.lang">Object</a></pre>
<div class="block">
<p> <span>根据<code>Schema</code>检查XML文档的<a href="../../../javax/xml/validation/Schema.html" title="javax.xml.validation中的类">处理器</a></span> </p>
<p> <span>验证器对象不是线程安全的,不能重入。</span> <span>换句话说,应用程序的责任是确保在任何给定时间从多个线程中使用一个<a href="../../../javax/xml/validation/Validator.html" title="javax.xml.validation中的类"><code>Validator</code></a>对象,而在调用<code>validate</code>方法时,应用程序可能不递归调用<code>validate</code>方法。</span> </p>
<p></p>
</div>
<dl>
<dt>
<span class="simpleTagLabel">从以下版本开始:</span>
</dt>
<dd>
1.5
</dd>
</dl> </li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== 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/xml/validation/Validator.html#Validator--">Validator</a></span>()</code>
<div class="block">
派生类的构造方法
</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>
<span class="tableTab" id="t4"><span><a href="javascript:show(8);">具体的方法</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="../../../org/xml/sax/ErrorHandler.html" title="interface in org.xml.sax">ErrorHandler</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/validation/Validator.html#getErrorHandler--">getErrorHandler</a></span>()</code>
<div class="block">
<span>获得当前<a href="../../../org/xml/sax/ErrorHandler.html" title="org.xml.sax中的接口"><code>ErrorHandler</code></a>设置为<a href="../../../javax/xml/validation/Validator.html" title="javax.xml.validation中的类"><code>Validator</code></a></span>
</div> </td>
</tr>
<tr class="rowColor" id="i1">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/validation/Validator.html#getFeature-java.lang.String-">getFeature</a></span>(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> name)</code>
<div class="block">
查找特征标记的值。
</div> </td>
</tr>
<tr class="altColor" id="i2">
<td class="colFirst"><code><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/xml/validation/Validator.html#getProperty-java.lang.String-">getProperty</a></span>(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> name)</code>
<div class="block">
查找属性的值。
</div> </td>
</tr>
<tr class="rowColor" id="i3">
<td class="colFirst"><code>abstract <a href="../../../org/w3c/dom/ls/LSResourceResolver.html" title="interface in org.w3c.dom.ls">LSResourceResolver</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/validation/Validator.html#getResourceResolver--">getResourceResolver</a></span>()</code>
<div class="block">
<span>获得当前<a href="../../../org/w3c/dom/ls/LSResourceResolver.html" title="界面在org.w3c.dom.ls中"><code>LSResourceResolver</code></a>设置为<a href="../../../javax/xml/validation/Validator.html" title="javax.xml.validation中的类"><code>Validator</code></a></span>
</div> </td>
</tr>
<tr class="altColor" id="i4">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/validation/Validator.html#reset--">reset</a></span>()</code>
<div class="block">
将此
<code>Validator</code>重置为原始配置。
</div> </td>
</tr>
<tr class="rowColor" id="i5">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/validation/Validator.html#setErrorHandler-org.xml.sax.ErrorHandler-">setErrorHandler</a></span>(<a href="../../../org/xml/sax/ErrorHandler.html" title="interface in org.xml.sax">ErrorHandler</a> errorHandler)</code>
<div class="block">
<span>设置<a href="../../../org/xml/sax/ErrorHandler.html" title="org.xml.sax中的接口"><code>ErrorHandler</code></a>以接收在<code>validate</code>方法调用期间<code>validate</code>错误。</span>
</div> </td>
</tr>
<tr class="altColor" id="i6">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/validation/Validator.html#setFeature-java.lang.String-boolean-">setFeature</a></span>(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> name, boolean value)</code>
<div class="block">
设置特征标志的值。
</div> </td>
</tr>
<tr class="rowColor" id="i7">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/validation/Validator.html#setProperty-java.lang.String-java.lang.Object-">setProperty</a></span>(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> name, <a href="../../../java/lang/Object.html" title="class in java.lang">Object</a> object)</code>
<div class="block">
设置属性的值。
</div> </td>
</tr>
<tr class="altColor" id="i8">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/validation/Validator.html#setResourceResolver-org.w3c.dom.ls.LSResourceResolver-">setResourceResolver</a></span>(<a href="../../../org/w3c/dom/ls/LSResourceResolver.html" title="interface in org.w3c.dom.ls">LSResourceResolver</a> resourceResolver)</code>
<div class="block">
<span>设置<a href="../../../org/w3c/dom/ls/LSResourceResolver.html" title="界面在org.w3c.dom.ls中"><code>LSResourceResolver</code></a>以在验证集中自定义资源分辨率。</span>
</div> </td>
</tr>
<tr class="rowColor" id="i9">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/validation/Validator.html#validate-javax.xml.transform.Source-">validate</a></span>(<a href="../../../javax/xml/transform/Source.html" title="interface in javax.xml.transform">Source</a> source)</code>
<div class="block">
验证指定的输入。
</div> </td>
</tr>
<tr class="altColor" id="i10">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/validation/Validator.html#validate-javax.xml.transform.Source-javax.xml.transform.Result-">validate</a></span>(<a href="../../../javax/xml/transform/Source.html" title="interface in javax.xml.transform">Source</a> source, <a href="../../../javax/xml/transform/Result.html" title="interface in javax.xml.transform">Result</a> result)</code>
<div class="block">
验证指定的输入并将增强的验证结果发送到指定的输出。
</div> </td>
</tr>
</tbody>
</table>
<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#toString--">toString</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="Validator--">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>Validator</h4> <pre>protected Validator()</pre>
<div class="block">
<span>派生类的构造方法</span>
<p> <span>构造函数什么也不做。</span> </p>
<p> <span>派生类必须创建<a href="../../../javax/xml/validation/Validator.html" title="javax.xml.validation中的类"><code>Validator</code></a>对象有<code>null</code> <a href="../../../org/xml/sax/ErrorHandler.html" title="org.xml.sax中的接口"><code>ErrorHandler</code></a><code>null</code> <a href="../../../org/w3c/dom/ls/LSResourceResolver.html" title="界面在org.w3c.dom.ls中"><code>LSResourceResolver</code></a></span> </p>
</div> </li>
</ul> </li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- --> </a> <h3>方法详细信息</h3> <a name="reset--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>reset</h4> <pre>public abstract void reset()</pre>
<div class="block">
<p> <span>将此<code>Validator</code>重置为原始配置。</span> </p>
<p> <span><code>Validator</code>被重置为与使用<a href="../../../javax/xml/validation/Schema.html#newValidator--"><code>Schema.newValidator()</code></a>创建时相同的状态。</span> <span><code>reset()</code>旨在允许现有的<code>Validator</code> s的重用从而节省了与创建新的<code>Validator</code> s相关的资源。</span> </p>
<p> <span>复位<code>Validator</code>不能保证具有相同的<a href="../../../org/w3c/dom/ls/LSResourceResolver.html" title="界面在org.w3c.dom.ls中"><code>LSResourceResolver</code></a><a href="../../../org/xml/sax/ErrorHandler.html" title="org.xml.sax中的接口"><code>ErrorHandler</code></a> <code>Object</code> s例如<a href="../../../java/lang/Object.html#equals-java.lang.Object-"><code>Object.equals(Object obj)</code></a></span> <span>保证功能相当于<code>LSResourceResolver</code><code>ErrorHandler</code></span> </p>
</div> </li>
</ul> <a name="validate-javax.xml.transform.Source-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>validate</h4> <pre>public void validate(<a href="../../../javax/xml/transform/Source.html" title="interface in javax.xml.transform">Source</a> source)
throws <a href="../../../org/xml/sax/SAXException.html" title="class in org.xml.sax">SAXException</a>,
<a href="../../../java/io/IOException.html" title="class in java.io">IOException</a></pre>
<div class="block">
<span>验证指定的输入。</span>
<p> <span>这只是<code>validate(Source source, Result result)</code><a href="../../../javax/xml/validation/Validator.html#validate-javax.xml.transform.Source-javax.xml.transform.Result-">result</a><code>result</code><code>null</code></span> </p>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<span><code>source</code> - 要验证的XML。</span>
<span>必须是XML文档或XML元素且不能为null。</span>
<span>为了向后兼容,尝试验证除文档或元素之外的任何内容的结果与实现相关。</span>
<span>实现必须识别和处理输入或者抛出IllegalArgumentException。</span>
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - 如果
<code>Source</code>是实现无法验证的XML伪像例如处理指令
</dd>
<dd>
<span><code><a href="../../../org/xml/sax/SAXException.html" title="class in org.xml.sax">SAXException</a></code> - 如果<a href="../../../org/xml/sax/ErrorHandler.html" title="org.xml.sax中的接口"><code>ErrorHandler</code></a>投掷<a href="../../../org/xml/sax/SAXException.html" title="在org.xml.sax中的类"><code>SAXException</code></a>或发现致命错误,并且<a href="../../../org/xml/sax/ErrorHandler.html" title="org.xml.sax中的接口"><code>ErrorHandler</code></a>返回正常。</span>
</dd>
<dd>
<span><code><a href="../../../java/io/IOException.html" title="class in java.io">IOException</a></code> - 如果验证器正在处理<a href="../../../javax/xml/transform/sax/SAXSource.html" title="javax.xml.transform.sax中的类"><code>SAXSource</code></a> ,底层<a href="../../../org/xml/sax/XMLReader.html" title="org.xml.sax中的接口"><code>XMLReader</code></a>会抛出<a href="../../../java/io/IOException.html" title="java.io中的类"><code>IOException</code></a></span>
</dd>
<dd>
<code><a href="../../../java/lang/NullPointerException.html" title="class in java.lang">NullPointerException</a></code> - 如果
<code>source</code>
<code>null</code>
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/xml/validation/Validator.html#validate-javax.xml.transform.Source-javax.xml.transform.Result-"><code>validate(Source source, Result result)</code></a>
</dd>
</dl> </li>
</ul> <a name="validate-javax.xml.transform.Source-javax.xml.transform.Result-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>validate</h4> <pre>public abstract void validate(<a href="../../../javax/xml/transform/Source.html" title="interface in javax.xml.transform">Source</a> source,
<a href="../../../javax/xml/transform/Result.html" title="interface in javax.xml.transform">Result</a> result)
throws <a href="../../../org/xml/sax/SAXException.html" title="class in org.xml.sax">SAXException</a>,
<a href="../../../java/io/IOException.html" title="class in java.io">IOException</a></pre>
<div class="block">
<p> <span>验证指定的输入并将增强的验证结果发送到指定的输出。</span> </p>
<p> <span>此方法对所接受的类型进行了以下<a href="../../../javax/xml/transform/Source.html" title="javax.xml.transform中的接口">限制</a> <a href="../../../javax/xml/transform/Result.html" title="javax.xml.transform中的接口"><code>Source</code>/<code>Result</code></a></span> </p>
<span> <code>Source</code> / <code>Result</code> Accepted <a href="../../../javax/xml/transform/stream/StreamSource.html" title="class in javax.xml.transform.stream"><code>StreamSource</code></a> <a href="../../../javax/xml/transform/sax/SAXSource.html" title="class in javax.xml.transform.sax"><code>SAXSource</code></a> <a href="../../../javax/xml/transform/dom/DOMSource.html" title="class in javax.xml.transform.dom"><code>DOMSource</code></a> <a href="../../../javax/xml/transform/stax/StAXSource.html" title="class in javax.xml.transform.stax"><code>StAXSource</code></a> <code>null</code> OK OK OK OK <a href="../../../javax/xml/transform/stream/StreamResult.html" title="class in javax.xml.transform.stream"><code>StreamResult</code></a> OK <code>IllegalArgumentException</code> <code>IllegalArgumentException</code> <code>IllegalArgumentException</code> <a href="../../../javax/xml/transform/sax/SAXResult.html" title="class in javax.xml.transform.sax"><code>SAXResult</code></a> <code>IllegalArgumentException</code> OK <code>IllegalArgumentException</code> <code>IllegalArgumentException</code> <a href="../../../javax/xml/transform/dom/DOMResult.html" title="class in javax.xml.transform.dom"><code>DOMResult</code></a> <code>IllegalArgumentException</code> <code>IllegalArgumentException</code> OK <code>IllegalArgumentException</code> <a href="../../../javax/xml/transform/stax/StAXResult.html" title="class in javax.xml.transform.stax"><code>StAXResult</code></a> <code>IllegalArgumentException</code> <code>IllegalArgumentException</code> <code>IllegalArgumentException</code> OK </span>
<table border="1">
</table>
<p> <span>要将一个<code>Source</code>验证成另一种<code>Result</code> ,请使用标识变压器(见<a href="../../../javax/xml/transform/TransformerFactory.html#newTransformer--"><code>TransformerFactory.newTransformer()</code></a> )。</span> </p>
<p> <span>验证期间发现的错误发送到指定的<a href="../../../org/xml/sax/ErrorHandler.html" title="org.xml.sax中的接口"><code>ErrorHandler</code></a></span> </p>
<p> <span>如果文档有效,或者文档包含一些错误,但没有一个是致命的,并且<code>ErrorHandler</code>没有抛出任何异常,则该方法将正常返回。</span> </p>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<span><code>source</code> - 要验证的XML。</span>
<span>必须是XML文档或XML元素且不能为null。</span>
<span>为了向后兼容,尝试验证除文档或元素之外的任何内容的结果与实现相关。</span>
<span>实现必须识别和处理输入或者抛出IllegalArgumentException。</span>
</dd>
<dd>
<span><code>result</code> - 接收可能扩充的XML的<code>Result</code>对象。</span>
<span>如果调用者对此不感兴趣则此参数可以为null。</span>
<span>请注意,当使用<code>DOMResult</code>验证器可能会将相同的DOM节点从<code>DOMSource</code><code>DOMResult</code> (在这种情况下为<code>source.getNode()==result.getNode()</code> 它可能会复制整个DOM树或者它可能会更改源所给的节点。</span>
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> -如果
<code>Result</code>类型不匹配
<code>Source</code>类型的,如果
<code>Source</code>是一个XML工件执行无法验证例如处理指令
</dd>
<dd>
<code><a href="../../../org/xml/sax/SAXException.html" title="class in org.xml.sax">SAXException</a></code> - 如果
<code>ErrorHandler</code>抛出
<code>SAXException</code>或发现致命错误,并且
<code>ErrorHandler</code>返回正常。
</dd>
<dd>
<span><code><a href="../../../java/io/IOException.html" title="class in java.io">IOException</a></code> - 如果验证器正在处理<code>SAXSource</code> ,底层<a href="../../../org/xml/sax/XMLReader.html" title="org.xml.sax中的接口"><code>XMLReader</code></a>抛出<code>IOException</code></span>
</dd>
<dd>
<code><a href="../../../java/lang/NullPointerException.html" title="class in java.lang">NullPointerException</a></code> - 如果
<code>source</code>参数是
<code>null</code>
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/xml/validation/Validator.html#validate-javax.xml.transform.Source-"><code>validate(Source source)</code></a>
</dd>
</dl> </li>
</ul> <a name="setErrorHandler-org.xml.sax.ErrorHandler-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>setErrorHandler</h4> <pre>public abstract void setErrorHandler(<a href="../../../org/xml/sax/ErrorHandler.html" title="interface in org.xml.sax">ErrorHandler</a> errorHandler)</pre>
<div class="block">
<span>设置<a href="../../../org/xml/sax/ErrorHandler.html" title="org.xml.sax中的接口"><code>ErrorHandler</code></a>以接收在<code>validate</code>方法调用期间<code>validate</code>错误。</span>
<p> <span>错误处理程序可用于在验证期间自定义错误处理过程。</span> <span>当设置<a href="../../../org/xml/sax/ErrorHandler.html" title="org.xml.sax中的接口"><code>ErrorHandler</code></a>时,验证期间发现的错误将首先发送到<a href="../../../org/xml/sax/ErrorHandler.html" title="org.xml.sax中的接口"><code>ErrorHandler</code></a></span> </p>
<p> <span>错误处理程序可以通过从处理程序中抛出<a href="../../../org/xml/sax/SAXException.html" title="在org.xml.sax中的类"><code>SAXException</code></a>来立即中止进一步验证。</span> <span>或者例如它可以在屏幕上打印错误,并尝试通过从<code>ErrorHandler</code>正常返回来继续<a href="../../../org/xml/sax/ErrorHandler.html" title="org.xml.sax中的接口">验证</a></span> </p>
<p> <span>如果任何<a href="../../../java/lang/Throwable.html" title="java.lang中的类"><code>Throwable</code></a>选自抛出<a href="../../../org/xml/sax/ErrorHandler.html" title="org.xml.sax中的接口"><code>ErrorHandler</code></a> ,所述的呼叫者<code>validate</code>方法将被抛出相同<a href="../../../java/lang/Throwable.html" title="java.lang中的类"><code>Throwable</code></a>对象。</span> </p>
<p> <span><a href="../../../javax/xml/validation/Validator.html" title="javax.xml.validation中的类"><code>Validator</code></a>不允许抛出<a href="../../../org/xml/sax/SAXException.html" title="在org.xml.sax中的类"><code>SAXException</code></a>没有首先报告给<a href="../../../org/xml/sax/ErrorHandler.html" title="org.xml.sax中的接口"><code>ErrorHandler</code></a></span> </p>
<p> <span><a href="../../../org/xml/sax/ErrorHandler.html" title="org.xml.sax中的接口"><code>ErrorHandler</code></a>为空时,执行将表现为如下设置以下<a href="../../../org/xml/sax/ErrorHandler.html" title="org.xml.sax中的接口"><code>ErrorHandler</code></a> </span> </p>
<pre> <span>class DraconianErrorHandler implements <a href="../../../org/xml/sax/ErrorHandler.html" title="interface in org.xml.sax"><code>ErrorHandler</code></a> {
public void fatalError( <a href="../../../org/xml/sax/SAXParseException.html" title="class in org.xml.sax"><code>SAXParseException</code></a> e ) throws <a href="../../../org/xml/sax/SAXException.html" title="class in org.xml.sax"><code>SAXException</code></a> {
throw e;
}
public void error( <a href="../../../org/xml/sax/SAXParseException.html" title="class in org.xml.sax"><code>SAXParseException</code></a> e ) throws <a href="../../../org/xml/sax/SAXException.html" title="class in org.xml.sax"><code>SAXException</code></a> {
throw e;
}
public void warning( <a href="../../../org/xml/sax/SAXParseException.html" title="class in org.xml.sax"><code>SAXParseException</code></a> e ) throws <a href="../../../org/xml/sax/SAXException.html" title="class in org.xml.sax"><code>SAXException</code></a> {
// noop
}
}</span> </pre>
<p> <span>当创建一个新的<a href="../../../javax/xml/validation/Validator.html" title="javax.xml.validation中的类"><code>Validator</code></a>对象时最初该字段设置为null。</span> </p>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<span><code>errorHandler</code> - 要设置的新的错误处理程序。</span>
<span>此参数可以为null。</span>
</dd>
</dl> </li>
</ul> <a name="getErrorHandler--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getErrorHandler</h4> <pre>public abstract <a href="../../../org/xml/sax/ErrorHandler.html" title="interface in org.xml.sax">ErrorHandler</a> getErrorHandler()</pre>
<div class="block">
<span>获得当前<a href="../../../org/xml/sax/ErrorHandler.html" title="org.xml.sax中的接口"><code>ErrorHandler</code></a>设置为此<a href="../../../javax/xml/validation/Validator.html" title="javax.xml.validation中的类"><code>Validator</code></a></span>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<span>此方法返回通过<a href="../../../javax/xml/validation/Validator.html#setErrorHandler-org.xml.sax.ErrorHandler-"><code>setErrorHandler(ErrorHandler)</code></a>方法最后设置的对象如果该方法从未调用则为null因为此<a href="../../../javax/xml/validation/Validator.html" title="javax.xml.validation中的类"><code>Validator</code></a>已创建。</span>
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/xml/validation/Validator.html#setErrorHandler-org.xml.sax.ErrorHandler-"><code>setErrorHandler(ErrorHandler)</code></a>
</dd>
</dl> </li>
</ul> <a name="setResourceResolver-org.w3c.dom.ls.LSResourceResolver-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>setResourceResolver</h4> <pre>public abstract void setResourceResolver(<a href="../../../org/w3c/dom/ls/LSResourceResolver.html" title="interface in org.w3c.dom.ls">LSResourceResolver</a> resourceResolver)</pre>
<div class="block">
<span>设置<a href="../../../org/w3c/dom/ls/LSResourceResolver.html" title="界面在org.w3c.dom.ls中"><code>LSResourceResolver</code></a>以在验证集中定制资源分辨率。</span>
<p> <span><a href="../../../javax/xml/validation/Validator.html" title="javax.xml.validation中的类"><code>Validator</code></a>使用<a href="../../../org/w3c/dom/ls/LSResourceResolver.html" title="界面在org.w3c.dom.ls中"><code>LSResourceResolver</code></a>当需要定位外部资源的同时进行验证,虽然完全是什么构成“定位外部资源”取决于每种架构语言。</span> </p>
<p> <span><a href="../../../org/w3c/dom/ls/LSResourceResolver.html" title="界面在org.w3c.dom.ls中"><code>LSResourceResolver</code></a>为空时,实现将表现为如下设置以下<a href="../../../org/w3c/dom/ls/LSResourceResolver.html" title="界面在org.w3c.dom.ls中"><code>LSResourceResolver</code></a> </span> </p>
<pre> <span>class DumbLSResourceResolver implements <a href="../../../org/w3c/dom/ls/LSResourceResolver.html" title="interface in org.w3c.dom.ls"><code>LSResourceResolver</code></a> {
public <a href="../../../org/w3c/dom/ls/LSInput.html" title="interface in org.w3c.dom.ls"><code>LSInput</code></a> resolveResource(
String publicId, String systemId, String baseURI) {
return null; // always return null
}
}</span> </pre>
<p> <span>如果一个<a href="../../../org/w3c/dom/ls/LSResourceResolver.html" title="界面在org.w3c.dom.ls中">88550533051583</a>抛出一个<a href="../../../java/lang/RuntimeException.html" title="java.lang中的类"><code>RuntimeException</code></a> (或其派生类的实例),那么<a href="../../../javax/xml/validation/Validator.html" title="javax.xml.validation中的类"><code>Validator</code></a>将中止解析,并且<code>validate</code>方法的调用者将收到相同的<a href="../../../java/lang/RuntimeException.html" title="java.lang中的类"><code>RuntimeException</code></a></span> </p>
<p> <span>当创建一个新的<a href="../../../javax/xml/validation/Validator.html" title="javax.xml.validation中的类"><code>Validator</code></a>对象时最初该字段设置为null。</span> </p>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<span><code>resourceResolver</code> - 要设置的新资源解析器。</span>
<span>此参数可以为null。</span>
</dd>
</dl> </li>
</ul> <a name="getResourceResolver--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getResourceResolver</h4> <pre>public abstract <a href="../../../org/w3c/dom/ls/LSResourceResolver.html" title="interface in org.w3c.dom.ls">LSResourceResolver</a> getResourceResolver()</pre>
<div class="block">
<span>获得当前<a href="../../../org/w3c/dom/ls/LSResourceResolver.html" title="界面在org.w3c.dom.ls中"><code>LSResourceResolver</code></a>设置为<a href="../../../javax/xml/validation/Validator.html" title="javax.xml.validation中的类"><code>Validator</code></a></span>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<span>此方法返回通过<a href="../../../javax/xml/validation/Validator.html#setResourceResolver-org.w3c.dom.ls.LSResourceResolver-"><code>setResourceResolver(LSResourceResolver)</code></a>方法最后设置的对象如果该方法从未调用则为null因为此<a href="../../../javax/xml/validation/Validator.html" title="javax.xml.validation中的类"><code>Validator</code></a>已创建。</span>
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/xml/validation/Validator.html#setErrorHandler-org.xml.sax.ErrorHandler-"><code>setErrorHandler(ErrorHandler)</code></a>
</dd>
</dl> </li>
</ul> <a name="getFeature-java.lang.String-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getFeature</h4> <pre>public boolean getFeature(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> name)
throws <a href="../../../org/xml/sax/SAXNotRecognizedException.html" title="class in org.xml.sax">SAXNotRecognizedException</a>,
<a href="../../../org/xml/sax/SAXNotSupportedException.html" title="class in org.xml.sax">SAXNotSupportedException</a></pre>
<div class="block">
<span>查找特征标记的值。</span>
<p> <span>功能名称是任何完全限定的URI。</span> <span><a href="../../../javax/xml/validation/Validator.html" title="javax.xml.validation中的类"><code>Validator</code></a>可以识别功能名称,但暂时无法返回其值。</span> <span>某些特征值可能仅在特定上下文中可用,例如在验证之前,期间或之后。</span> </p>
<p> <span>实施者是免费并被鼓励发明自己的功能使用自己的URI建立的名称。</span> </p>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>name</code> - 功能名称它是非空的完全限定URI。
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
特征的当前值true或false
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../org/xml/sax/SAXNotRecognizedException.html" title="class in org.xml.sax">SAXNotRecognizedException</a></code> - 如果功能值无法分配或检索。
</dd>
<dd>
<span><code><a href="../../../org/xml/sax/SAXNotSupportedException.html" title="class in org.xml.sax">SAXNotSupportedException</a></code> - 当<a href="../../../javax/xml/validation/Validator.html" title="javax.xml.validation中的类"><code>Validator</code></a>识别功能名称,但此时无法确定其值。</span>
</dd>
<dd>
<code><a href="../../../java/lang/NullPointerException.html" title="class in java.lang">NullPointerException</a></code> - name参数为null时。
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/xml/validation/Validator.html#setFeature-java.lang.String-boolean-"><code>setFeature(String, boolean)</code></a>
</dd>
</dl> </li>
</ul> <a name="setFeature-java.lang.String-boolean-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>setFeature</h4> <pre>public void setFeature(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> name,
boolean value)
throws <a href="../../../org/xml/sax/SAXNotRecognizedException.html" title="class in org.xml.sax">SAXNotRecognizedException</a>,
<a href="../../../org/xml/sax/SAXNotSupportedException.html" title="class in org.xml.sax">SAXNotSupportedException</a></pre>
<div class="block">
<span>设置特征标志的值。</span>
<p> <span>功能可用于控制<a href="../../../javax/xml/validation/Validator.html" title="javax.xml.validation中的类"><code>Validator</code></a>解析模式的方式,尽管<a href="../../../javax/xml/validation/Validator.html" title="javax.xml.validation中的类"><code>Validator</code></a>不需要识别任何特定的功能名称。</span> </p>
<p> <span>功能名称是任何完全限定的URI。</span> <span><a href="../../../javax/xml/validation/Validator.html" title="javax.xml.validation中的类"><code>Validator</code></a>可以公开特征值,但无法更改当前值。</span> <span>一些特征值可以是不可变的或可变的仅在特定的上下文中,例如验证之前,期间或之后。</span> </p>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>name</code> - 特征名称它是非空的完全限定URI。
</dd>
<dd>
<code>value</code> - 要素的值true或false
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../org/xml/sax/SAXNotRecognizedException.html" title="class in org.xml.sax">SAXNotRecognizedException</a></code> - 如果无法分配或检索到特征值。
</dd>
<dd>
<span><code><a href="../../../org/xml/sax/SAXNotSupportedException.html" title="class in org.xml.sax">SAXNotSupportedException</a></code> - <a href="../../../javax/xml/validation/Validator.html" title="javax.xml.validation中的类"><code>Validator</code></a>识别功能名称但无法设置请求的值时。</span>
</dd>
<dd>
<code><a href="../../../java/lang/NullPointerException.html" title="class in java.lang">NullPointerException</a></code> - name参数为null时。
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/xml/validation/Validator.html#getFeature-java.lang.String-"><code>getFeature(String)</code></a>
</dd>
</dl> </li>
</ul> <a name="setProperty-java.lang.String-java.lang.Object-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>setProperty</h4> <pre>public void setProperty(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> name,
<a href="../../../java/lang/Object.html" title="class in java.lang">Object</a> object)
throws <a href="../../../org/xml/sax/SAXNotRecognizedException.html" title="class in org.xml.sax">SAXNotRecognizedException</a>,
<a href="../../../org/xml/sax/SAXNotSupportedException.html" title="class in org.xml.sax">SAXNotSupportedException</a></pre>
<div class="block">
<span>设置属性的值。</span>
<p> <span>属性名称是任何完全限定的URI。</span> <span><a href="../../../javax/xml/validation/Validator.html" title="javax.xml.validation中的类"><code>Validator</code></a>可以识别属性名称,但无法更改当前值。</span> <span>某些属性值可能仅在特定上下文中是不可变的或可变的,例如验证之前,之中或之后。</span> </p>
<p> <span>实现JAXP 1.5或更高版本的所有实现都需要支持<a href="../../../javax/xml/XMLConstants.html#ACCESS_EXTERNAL_DTD"><code>XMLConstants.ACCESS_EXTERNAL_DTD</code></a><a href="../../../javax/xml/XMLConstants.html#ACCESS_EXTERNAL_SCHEMA"><code>XMLConstants.ACCESS_EXTERNAL_SCHEMA</code></a>属性。</span> </p>
<ul>
<li><p> <span>访问源或模式文件中的外部DTD仅限于<a href="../../../javax/xml/XMLConstants.html#ACCESS_EXTERNAL_DTD"><code>XMLConstants.ACCESS_EXTERNAL_DTD</code></a>属性指定的<a href="../../../javax/xml/XMLConstants.html#ACCESS_EXTERNAL_DTD">协议</a></span> <span>如果由于此属性的限制,在验证期间访问被拒绝,则<a href="../../../org/xml/sax/SAXException.html" title="在org.xml.sax中的类"><code>validate(Source)</code></a>将被抛出<a href="../../../javax/xml/validation/Validator.html#validate-javax.xml.transform.Source-"><code>validate(Source)</code></a>方法。</span> </p><p> <span><a href="../../../javax/xml/XMLConstants.html#ACCESS_EXTERNAL_SCHEMA">schemaLocation</a>属性访问外部引用集仅限于<a href="../../../javax/xml/XMLConstants.html#ACCESS_EXTERNAL_SCHEMA"><code>XMLConstants.ACCESS_EXTERNAL_SCHEMA</code></a>属性指定的<a href="../../../javax/xml/XMLConstants.html#ACCESS_EXTERNAL_SCHEMA">协议</a></span> <span>如果访问由于此属性的限制而在验证期间被拒绝,则<a href="../../../org/xml/sax/SAXException.html" title="在org.xml.sax中的类">88550533642626</a>将被抛出<a href="../../../javax/xml/validation/Validator.html#validate-javax.xml.transform.Source-"><code>validate(Source)</code></a>方法。</span> </p></li>
</ul>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>name</code> - 属性名称它是非空的完全限定的URI。
</dd>
<dd>
<code>object</code> - 该资源的请求值。
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../org/xml/sax/SAXNotRecognizedException.html" title="class in org.xml.sax">SAXNotRecognizedException</a></code> - 如果不能分配或检索属性值。
</dd>
<dd>
<span><code><a href="../../../org/xml/sax/SAXNotSupportedException.html" title="class in org.xml.sax">SAXNotSupportedException</a></code> - 当<a href="../../../javax/xml/validation/Validator.html" title="javax.xml.validation中的类"><code>Validator</code></a>识别属性名称但无法设置请求的值时。</span>
</dd>
<dd>
<code><a href="../../../java/lang/NullPointerException.html" title="class in java.lang">NullPointerException</a></code> - name参数为null时。
</dd>
</dl> </li>
</ul> <a name="getProperty-java.lang.String-">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>getProperty</h4> <pre>public <a href="../../../java/lang/Object.html" title="class in java.lang">Object</a> getProperty(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> name)
throws <a href="../../../org/xml/sax/SAXNotRecognizedException.html" title="class in org.xml.sax">SAXNotRecognizedException</a>,
<a href="../../../org/xml/sax/SAXNotSupportedException.html" title="class in org.xml.sax">SAXNotSupportedException</a></pre>
<div class="block">
<span>查找属性的值。</span>
<p> <span>属性名称是任何完全限定的URI。</span> <span><a href="../../../javax/xml/validation/Validator.html" title="javax.xml.validation中的类"><code>Validator</code></a>可以识别属性名称,但暂时无法返回其值。</span> <span>某些属性值可能仅在特定上下文中可用,例如验证之前,期间或之后。</span> </p>
<p> <span><a href="../../../javax/xml/validation/Validator.html" title="javax.xml.validation中的类"><code>Validator</code></a>不需要识别任何特定的属性名称。</span> </p>
<p> <span>实施者是免费的并被鼓励发明自己的属性使用自己的URI建立的名称。</span> </p>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>name</code> - 属性名称它是非空的完全限定的URI。
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
当前的属性值。
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../org/xml/sax/SAXNotRecognizedException.html" title="class in org.xml.sax">SAXNotRecognizedException</a></code> - 如果属性值无法分配或检索。
</dd>
<dd>
<code><a href="../../../org/xml/sax/SAXNotSupportedException.html" title="class in org.xml.sax">SAXNotSupportedException</a></code> - 当XMLReader识别属性名称但无法确定其值在此时。
</dd>
<dd>
<code><a href="../../../java/lang/NullPointerException.html" title="class in java.lang">NullPointerException</a></code> - name参数为null时。
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/xml/validation/Validator.html#setProperty-java.lang.String-java.lang.Object-"><code>setProperty(String, Object)</code></a>
</dd>
</dl> </li>
</ul> </li>
</ul> </li>
</ul>
</div>
</div>