Documentbuilderfactory java что это
Перейти к содержимому

Documentbuilderfactory java что это

Document Builder Factory Class

Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

Defines a factory API that enables applications to obtain a parser that produces DOM object trees from XML documents.

Remarks

Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.

Constructors

A constructor used when creating managed representations of JNI objects; called by the runtime.

Properties

Returns the runtime class of this Object .

Indicates whether or not the factory is configured to produce parsers which converts CDATA nodes to Text nodes and appends it to the adjacent (if any) Text node. -or- Specifies that the parser produced by this code will convert CDATA nodes to Text nodes and append it to the adjacent (if any) text node.

Indicates whether or not the factory is configured to produce parsers which expand entity reference nodes. -or- Specifies that the parser produced by this code will expand entity reference nodes.

The handle to the underlying Android instance.

Indicates whether or not the factory is configured to produce parsers which ignores comments. -or- Specifies that the parser produced by this code will ignore comments.

Indicates whether or not the factory is configured to produce parsers which ignore ignorable whitespace in element content. -or- Specifies that the parsers created by this factory must eliminate whitespace in element content (sometimes known loosely as ‘ignorable whitespace’) when parsing XML documents (see XML Rec 2.

Indicates whether or not the factory is configured to produce parsers which are namespace aware. -or- Specifies that the parser produced by this code will provide support for XML namespaces.

Gets the Schema object specified through the #setSchema(Schema schema) method. -or- Set the Schema to be used by parsers created from this factory.

This API supports the Mono for Android infrastructure and is not intended to be used directly from your code.

This API supports the Mono for Android infrastructure and is not intended to be used directly from your code.

Indicates whether or not the factory is configured to produce parsers which validate the XML content during parse. -or- Specifies that the parser produced by this code will validate documents as they are parsed.

Get state of XInclude processing. -or- Set state of XInclude processing.

Methods

Creates and returns a copy of this object.

Indicates whether some other object is "equal to" this one.

Allows the user to retrieve specific attributes on the underlying implementation.

Get the state of the named feature.

Returns a hash code value for the object.

Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.

Creates a new instance of a javax.xml.parsers.DocumentBuilder using the currently configured parameters.

Returns Android’s implementation of DocumentBuilderFactory .

Returns an instance of the named implementation of DocumentBuilderFactory .

Wakes up a single thread that is waiting on this object’s monitor.

Wakes up all threads that are waiting on this object’s monitor.

Allows the user to set specific attributes on the underlying implementation.

Set a feature for this <code>DocumentBuilderFactory</code> and <code>DocumentBuilder</code>s created by this factory.

Documentbuilderfactory java что это

Protected constructor to prevent instantiation. Use newInstance() .

Method Detail

newInstance
  • Use the javax.xml.parsers.DocumentBuilderFactory system property.
  • Use the properties file «lib/jaxp.properties» in the JRE directory. This configuration file is in standard java.util.Properties format and contains the fully qualified name of the implementation class with the key being the system property defined above. The jaxp.properties file is read only once by the JAXP implementation and it’s values are then cached for future use. If the file does not exist when the first attempt is made to read from it, no further attempts are made to check for its existence. It is not possible to change the value of any property in jaxp.properties after it has been read for the first time.
  • Uses the service-provider loading facilities, defined by the ServiceLoader class, to attempt to locate and load an implementation of the service using the default loading mechanism: the service-provider loading facility will use the current thread’s context class loader to attempt to load the service. If the context class loader is null, the system class loader will be used.
  • Otherwise, the system-default implementation is returned.

Tip for Trouble-shooting

Setting the jaxp.debug system property will cause this method to print a lot of debug messages to System.err about what it is doing and where it is looking at.

If you have problems loading DocumentBuilder s, try:

newInstance

Obtain a new instance of a DocumentBuilderFactory from class name. This function is useful when there are multiple providers in the classpath. It gives more control to the application as it can specify which provider should be loaded.

Once an application has obtained a reference to a DocumentBuilderFactory it can use the factory to configure and obtain parser instances.

Tip for Trouble-shooting

Setting the jaxp.debug system property will cause this method to print a lot of debug messages to System.err about what it is doing and where it is looking at.

If you have problems try:

newDocumentBuilder
setNamespaceAware
setValidating

Note that «the validation» here means a validating parser as defined in the XML recommendation. In other words, it essentially just controls the DTD validation. (except the legacy two properties defined in JAXP 1.2.)

To use modern schema languages such as W3C XML Schema or RELAX NG instead of DTD, you can configure your parser to be a non-validating parser by leaving the setValidating(boolean) method false , then use the setSchema(Schema) method to associate a schema to a parser.

setIgnoringElementContentWhitespace
setExpandEntityReferences
setIgnoringComments

Specifies that the parser produced by this code will ignore comments. By default the value of this is set to false .

setCoalescing
isNamespaceAware
isValidating
isIgnoringElementContentWhitespace
isExpandEntityReferences
isIgnoringComments
isCoalescing
setAttribute

All implementations that implement JAXP 1.5 or newer are required to support the XMLConstants.ACCESS_EXTERNAL_DTD and XMLConstants.ACCESS_EXTERNAL_SCHEMA properties.

Setting the XMLConstants.ACCESS_EXTERNAL_DTD property restricts the access to external DTDs, external Entity References to the protocols specified by the property. If access is denied during parsing due to the restriction of this property, SAXException will be thrown by the parse methods defined by DocumentBuilder .

Setting the XMLConstants.ACCESS_EXTERNAL_SCHEMA property restricts the access to external Schema set by the schemaLocation attribute to the protocols specified by the property. If access is denied during parsing due to the restriction of this property, SAXException will be thrown by the parse methods defined by DocumentBuilder .

getAttribute
setFeature

Set a feature for this DocumentBuilderFactory and DocumentBuilder s created by this factory.

Feature names are fully qualified URI s. Implementations may define their own features. A ParserConfigurationException is thrown if this DocumentBuilderFactory or the DocumentBuilder s it creates cannot support the feature. It is possible for a DocumentBuilderFactory to expose a feature value but be unable to change its state.

All implementations are required to support the XMLConstants.FEATURE_SECURE_PROCESSING feature. When the feature is:

  • true : the implementation will limit XML processing to conform to implementation limits. Examples include enity expansion limits and XML Schema constructs that would consume large amounts of resources. If XML processing is limited for security reasons, it will be reported via a call to the registered ErrorHandler.fatalError(SAXParseException exception) . See DocumentBuilder.setErrorHandler(org.xml.sax.ErrorHandler errorHandler) .
  • false : the implementation will processing XML according to the XML specifications without regard to possible implementation limits.
getFeature

Get the state of the named feature.

Feature names are fully qualified URI s. Implementations may define their own features. An ParserConfigurationException is thrown if this DocumentBuilderFactory or the DocumentBuilder s it creates cannot support the feature. It is possible for an DocumentBuilderFactory to expose a feature value but be unable to change its state.

getSchema
setSchema

Set the Schema to be used by parsers created from this factory.

When a Schema is non-null, a parser will use a validator created from it to validate documents before it passes information down to the application.

When errors are found by the validator, the parser is responsible to report them to the user-specified ErrorHandler (or if the error handler is not set, ignore them or throw them), just like any other errors found by the parser itself. In other words, if the user-specified ErrorHandler is set, it must receive those errors, and if not, they must be treated according to the implementation specific default error handling rules.

A validator may modify the outcome of a parse (for example by adding default values that were missing in documents), and a parser is responsible to make sure that the application will receive modified DOM trees.

Initialy, null is set as the Schema .

This processing will take effect even if the isValidating() method returns false .

It is an error to use the http://java.sun.com/xml/jaxp/properties/schemaSource property and/or the http://java.sun.com/xml/jaxp/properties/schemaLanguage property in conjunction with a Schema object. Such configuration will cause a ParserConfigurationException exception when the newDocumentBuilder() is invoked.

Note for implmentors

A parser must be able to work with any Schema implementation. However, parsers and schemas are allowed to use implementation-specific custom mechanisms as long as they yield the result described in the specification.

setXIncludeAware

Set state of XInclude processing.

If XInclude markup is found in the document instance, should it be processed as specified in XML Inclusions (XInclude) Version 1.0.

Class DocumentBuilderFactory

Once an application has obtained a reference to a DocumentBuilderFactory , it can use the factory to configure and obtain parser instances.

Tip for Trouble-shooting

Setting the jaxp.debug system property will cause this method to print a lot of debug messages to System.err about what it is doing and where it is looking at.

If you have problems loading DocumentBuilder s, try:

newInstance

Once an application has obtained a reference to a DocumentBuilderFactory it can use the factory to configure and obtain parser instances.

Tip for Trouble-shooting

Setting the jaxp.debug system property will cause this method to print a lot of debug messages to System.err about what it is doing and where it is looking at.

If you have problems try:

newDocumentBuilder

setNamespaceAware

setValidating

Note that «the validation» here means a validating parser as defined in the XML recommendation. In other words, it essentially just controls the DTD validation. (except the legacy two properties defined in JAXP 1.2.)

To use modern schema languages such as W3C XML Schema or RELAX NG instead of DTD, you can configure your parser to be a non-validating parser by leaving the setValidating(boolean) method false , then use the setSchema(Schema) method to associate a schema to a parser.

setIgnoringElementContentWhitespace

setExpandEntityReferences

setIgnoringComments

setCoalescing

isNamespaceAware

isValidating

isIgnoringElementContentWhitespace

isExpandEntityReferences

isIgnoringComments

isCoalescing

setAttribute

  • Setting the XMLConstants.ACCESS_EXTERNAL_DTD property restricts the access to external DTDs, external Entity References to the protocols specified by the property. If access is denied during parsing due to the restriction of this property, SAXException will be thrown by the parse methods defined by DocumentBuilder .
  • Setting the XMLConstants.ACCESS_EXTERNAL_SCHEMA property restricts the access to external Schema set by the schemaLocation attribute to the protocols specified by the property. If access is denied during parsing due to the restriction of this property, SAXException will be thrown by the parse methods defined by DocumentBuilder .

getAttribute

setFeature

Feature names are fully qualified URI s. Implementations may define their own features. A ParserConfigurationException is thrown if this DocumentBuilderFactory or the DocumentBuilder s it creates cannot support the feature. It is possible for a DocumentBuilderFactory to expose a feature value but be unable to change its state.

  • true : the implementation will limit XML processing to conform to implementation limits. Examples include entity expansion limits and XML Schema constructs that would consume large amounts of resources. If XML processing is limited for security reasons, it will be reported via a call to the registered ErrorHandler.fatalError(SAXParseException exception) . See DocumentBuilder.setErrorHandler(org.xml.sax.ErrorHandler errorHandler) .
  • false : the implementation will processing XML according to the XML specifications without regard to possible implementation limits.

getFeature

Feature names are fully qualified URI s. Implementations may define their own features. An ParserConfigurationException is thrown if this DocumentBuilderFactory or the DocumentBuilder s it creates cannot support the feature. It is possible for an DocumentBuilderFactory to expose a feature value but be unable to change its state.

getSchema

setSchema

When a Schema is non-null, a parser will use a validator created from it to validate documents before it passes information down to the application.

When errors are found by the validator, the parser is responsible to report them to the user-specified ErrorHandler (or if the error handler is not set, ignore them or throw them), just like any other errors found by the parser itself. In other words, if the user-specified ErrorHandler is set, it must receive those errors, and if not, they must be treated according to the implementation specific default error handling rules.

A validator may modify the outcome of a parse (for example by adding default values that were missing in documents), and a parser is responsible to make sure that the application will receive modified DOM trees.

Initially, null is set as the Schema .

This processing will take effect even if the isValidating() method returns false .

It is an error to use the http://java.sun.com/xml/jaxp/properties/schemaSource property and/or the http://java.sun.com/xml/jaxp/properties/schemaLanguage property in conjunction with a Schema object. Such configuration will cause a ParserConfigurationException exception when the newDocumentBuilder() is invoked.

Note for implementors

A parser must be able to work with any Schema implementation. However, parsers and schemas are allowed to use implementation-specific custom mechanisms as long as they yield the result described in the specification.

setXIncludeAware

If XInclude markup is found in the document instance, should it be processed as specified in XML Inclusions (XInclude) Version 1.0.

XInclude processing defaults to false .

isXIncludeAware

Report a bug or suggest an enhancement
For further API reference and developer documentation see the Java SE Documentation, which contains more detailed, developer-targeted descriptions with conceptual overviews, definitions of terms, workarounds, and working code examples. Other versions.
Java is a trademark or registered trademark of Oracle and/or its affiliates in the US and other countries.
Copyright © 1993, 2022, Oracle and/or its affiliates, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
All rights reserved. Use is subject to license terms and the documentation redistribution policy.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *