public abstract class SAXParserFactory extends Object
Modifier | Constructor and Description |
---|---|
protected |
SAXParserFactory()
构造函数使用
newInstance() 保护力。
|
Modifier and Type | Method and Description |
---|---|
abstract boolean |
getFeature(String name)
返回特定的性能要求在org.xml.sax.xmlreader底层的实现。
|
Schema |
getSchema()
通过
setSchema(Schema schema) 方法中指定的
Schema 对象。
|
boolean |
isNamespaceAware()
指示是否工厂配置生产解析器进行命名空间感知。
|
boolean |
isValidating()
指示是否工厂配置生产解析器验证XML内容中解析。
|
boolean |
isXIncludeAware()
得到的XInclude处理状态。
|
static SAXParserFactory |
newInstance()
获得一个
SAXParserFactory 新实例。
|
static SAXParserFactory |
newInstance(String factoryClassName, ClassLoader classLoader)
从中获得的一个新实例类的名称
SAXParserFactory 。
|
abstract SAXParser |
newSAXParser()
创建一个新实例SAXParser使用当前配置的工厂参数。
|
abstract void |
setFeature(String name, boolean value)
在org.xml.sax.xmlreader底层实现特定的功能集。
|
void |
setNamespaceAware(boolean awareness)
指定的代码产生的解析器将XML命名空间的支持。
|
void |
setSchema(Schema schema)
设置
Schema 被从这个工厂创建解析器使用。
|
void |
setValidating(boolean validating)
指定由此代码生成的解析器将验证文档,因为它们被解析。
|
void |
setXIncludeAware(boolean state)
套XInclude处理状态。
|
protected SAXParserFactory()
构造函数使用newInstance()
保护力。
public static SAXParserFactory newInstance()
SAXParserFactory
新实例。这种静态方法创建一个新的工厂实例方法使用以下命令查找程序来确定
SAXParserFactory
实现类负荷:
javax.xml.parsers.SAXParserFactory
系统性能。java.util.Properties
格式包含实现类的完全限定名的关键是上面定义的系统性能。的jaxp.properties文件只有一次由JAXP实现读取它的值然后储存以备将来使用。如果该文件不存在时,第一次尝试是从它读取,没有进一步的尝试,以检查其存在。它不可能在它被第一次看到改变在jaxp.properties任何财产的价值。ServiceLoader
类定义,试图定位和加载使用default loading mechanism服务的实现:服务提供者装载设备将使用current thread's context class loader尝试加载服务。如果上下文类加载器是空的,将使用的system class loader。SAXParserFactory
可以使用工厂配置和获取解析器实例。
设置jaxp.debug
系统属性将导致这种方法印制大量的调试消息System.err
关于它是什么做的,是在看。
如果你有问题SAXParser
s试装:
java djaxp。调试= 1你的…
FactoryConfigurationError
-的情况下,
service configuration error或者执行不可用或不能被实例化。
public static SAXParserFactory newInstance(String factoryClassName, ClassLoader classLoader)
从中获得的一个新实例类的名称SAXParserFactory
。此功能是有用的当有多个供应商在类路径。它给应用程序提供了更多的控制,因为它可以指定要加载哪个提供程序。
一旦申请获得参考一SAXParserFactory
可以使用工厂配置和获取解析器实例。
设置jaxp.debug
系统属性将导致这种方法印制大量的调试消息System.err
关于它是什么做的,是在看。
如果你有问题,尝试:
java djaxp。调试= 1你的…
factoryClassName
完全合格的工厂类的名称,提供了实现
javax.xml.parsers.SAXParserFactory
。
classLoader
用于负荷工厂类
ClassLoader
。如果
null
电流
Thread
上下文类加载器来加载工厂类。
SAXParserFactory
新实例
FactoryConfigurationError
-如果
factoryClassName
是
null
,或工厂类不能被加载,实例化。
newInstance()
public abstract SAXParser newSAXParser() throws ParserConfigurationException, SAXException
创建一个新实例SAXParser使用当前配置的工厂参数。
ParserConfigurationException
如果解析器不能创造满足要求的配置。
SAXException
-萨克斯错误。
public void setNamespaceAware(boolean awareness)
false
。
awareness
-如果这个代码产生的解析器将提供XML命名空间的支持;否则为false。
public void setValidating(boolean validating)
false
。
注意“验证”在这里的意思是a validating parser作为XML推荐定义。换句话说,它基本上只控制DTD验证。(除了在JAXP 1.2。定义的两个性质的遗产)
使用如W3C XML Schema现代图式语言或RELAXNG代替DTD,您可以配置您的解析器是一个非离开setValidating(boolean)
方法false
验证解析器,然后用setSchema(Schema)
方法联想模式分析器。
validating
-如果这个代码产生的解析器将验证文件作为他们处理;否则为false。
public boolean isNamespaceAware()
public boolean isValidating()
public abstract void setFeature(String name, boolean value) throws ParserConfigurationException, SAXNotRecognizedException, SAXNotSupportedException
在org.xml.sax.xmlreader底层实现特定的功能集。一个列表的核心功能和属性可以发现在http://www.saxproject.org/
所有的实现都必须支持的XMLConstants.FEATURE_SECURE_PROCESSING
特征。当功能是
true
:实施将限制XML处理符合实施限制。例子包括实体扩展限制和将要消耗大量资源的XML架构结构。如果XML处理有限,出于安全原因,它将报告通过电话注册ErrorHandler.fatalError(SAXParseException exception)
。看到SAXParser
parse
方法处理规范。false
,实施将根据XML规范不考虑可能实施限制XML处理。name
特征的名称是。
value
特征的设定值。
ParserConfigurationException
如果解析器不能创造满足要求的配置。
SAXNotRecognizedException
-当标的XmlReader无法识别的属性名称。
SAXNotSupportedException
-当标的XmlReader识别属性名称,但不支持的属性。
NullPointerException
-如果
name
参数为空。
XMLReader.setFeature(java.lang.String, boolean)
public abstract boolean getFeature(String name) throws ParserConfigurationException, SAXNotRecognizedException, SAXNotSupportedException
返回特定的性能要求在org.xml.sax.xmlreader底层的实现。
name
-要检索该属性的名称。
ParserConfigurationException
如果解析器不能创造满足要求的配置。
SAXNotRecognizedException
-当标的XmlReader无法识别的属性名称。
SAXNotSupportedException
-当标的XmlReader识别属性名称,但不支持的属性。
XMLReader.getProperty(java.lang.String)
public Schema getSchema()
setSchema(Schema schema)
方法中指定的
Schema
对象。
Schema
对象的最后一套通过
setSchema(Schema)
方法,或null如果方法不调用,因为
SAXParserFactory
创建。
UnsupportedOperationException
当实施不重写这个方法
public void setSchema(Schema schema)
设置Schema
被从这个工厂创建解析器使用。
当一个Schema
非空,解析器将使用器由它传递信息到应用程序之前验证文件。
当警告/错误/致命的错误是由验证发现,解析器必须处理他们如果这些错误是由解析器本身找到。换句话说,如果用户指定的ErrorHandler
设置,就必须接受这些错误,如果没有,他们必须根据实施特定的默认错误处理规则处理。
验证器可以修改SAX事件流(例如,通过添加默认值失踪的文件),和一个解析器负责确保应用程序将收到这些修改的事件流。
首次,null
为Schema
。
这种处理会即使isValidating()
方法返回false
生效。
它是用http://java.sun.com/xml/jaxp/properties/schemaSource
财产和/或与一个非空的Schema
对象相结合的http://java.sun.com/xml/jaxp/properties/schemaLanguage
属性错误。这样的配置会导致SAXException
异常时,这些属性被设置在一个SAXParser
。
分析器必须能够与任何Schema
实施工作。然而,分析器和架构允许使用特定实现的自定义机制,只要他们产生的结果在规范描述。
schema
-
Schema
使用,
null
删除模式。
UnsupportedOperationException
当实施不重写这个方法
public void setXIncludeAware(boolean state)
套XInclude处理状态。
如果XInclude的标记在文档实例中发现的,它应该是 XML Inclusions (XInclude) Version 1.0处理规定。
默认false
XInclude处理。
state
集来
true
或
false
XInclude处理
UnsupportedOperationException
当实施不重写这个方法
public boolean isXIncludeAware()
得到的XInclude处理状态。
UnsupportedOperationException
当实施不重写这个方法
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.