Java 教程是为 JDK 8 编写的。本页中描述的示例和实践未利用在后续版本中引入的改进。
处理限制定义
The following list describes the JAXP XML Processing Limits supported in the JDK.
These limits can be specified through the factory APIs, system properties, and the
jaxp.properties file.
entityExpansionLimit
Attribute |
描述 |
Name |
http://www.oracle.com/xml/jaxp/properties/entityExpansionLimit |
定义 |
Limit the number of entity expansions. |
值 |
A positive integer. A value less than or equal to 0 indicates no limit. If the value is not
an integer, a NumericFormatException is thrown. |
Default value |
64000 |
System property |
jdk.xml.entityExpansionLimit |
Since |
7u45, 8 |
elementAttributeLimit
Attribute |
描述 |
Name |
http://www.oracle.com/xml/jaxp/properties/elementAttributeLimit |
定义 |
Limit the number of attributes an element can have. |
值 |
A positive integer. A value less than or equal to 0 indicates no limit. If the value is not
an integer, a NumericFormatException is thrown. |
Default value |
10000 |
System property |
jdk.xml.elementAttributeLimit |
Since |
7u45, 8 |
maxOccurLimit
Attribute |
描述 |
Name |
http://www.oracle.com/xml/jaxp/properties/maxOccurLimit |
定义 |
Limit the number of content model nodes that may be created
when building a grammar for a W3C XML Schema that contains maxOccurs attributes
with values other than "unbounded". |
值 |
A positive integer. A value less than or equal to 0 indicates no limit. If the value is not
an integer, a NumericFormatException is thrown. |
Default value |
5000 |
System property |
jdk.xml.maxOccurLimit |
Since |
7u45, 8 |
totalEntitySizeLimit
Attribute |
描述 |
Name |
http://www.oracle.com/xml/jaxp/properties/totalEntitySizeLimit |
定义 |
Limit the total size of all entities that include general and parameter entities. The size is calculated as an aggregation of all entities. |
值 |
A positive integer. A value less than or equal to 0 indicates no limit. If the value is not
an integer, a NumericFormatException is thrown. |
Default value |
5x10^7 |
System property |
jdk.xml.totalEntitySizeLimit |
Since |
7u45, 8 |
maxGeneralEntitySizeLimit
Attribute |
描述 |
Name |
http://www.oracle.com/xml/jaxp/properties/maxGeneralEntitySizeLimit |
定义 |
Limit the maximum size of any general entities. |
值 |
A positive integer. A value less than or equal to 0 indicates no limit. If the value is not
an integer, a NumericFormatException is thrown. |
Default value |
0 |
System property |
jdk.xml.maxGeneralEntitySizeLimit |
Since |
7u45, 8 |
maxParameterEntitySizeLimit
Attribute |
描述 |
Name |
http://www.oracle.com/xml/jaxp/properties/maxParameterEntitySizeLimit |
定义 |
Limit the maximum size of any parameter entities, including the result of nesting multiple parameter entities. |
值 |
A positive integer. A value less than or equal to 0 indicates no limit. If the value is not
an integer, a NumericFormatException is thrown. |
Default value |
1000000 |
System property |
jdk.xml.maxParameterEntitySizeLimit |
Since |
7u45, 8 |
entityReplacementLimit
Attribute |
描述 |
Name |
http://www.oracle.com/xml/jaxp/properties/entityReplacementLimit |
定义 |
Limit the total number of nodes in all entity references. |
值 |
A positive integer. A value less than or equal to 0 indicates no limit. If the value is not
an integer, a NumericFormatException is thrown. |
Default value |
3000000 |
System property |
jdk.xml.entityReplacementLimit |
Since |
7u111, 8u101 |
maxElementDepth
Attribute |
描述 |
Name |
http://www.oracle.com/xml/jaxp/properties/maxElementDepth |
定义 |
Limit the maximum element depth. |
值 |
A positive integer. A value less than or equal to 0 indicates no limit. If the value is not
an integer, a NumericFormatException is thrown. |
Default value |
0 |
System property |
jdk.xml.maxElementDepth |
Since |
7u65, 8u11 |
maxXMLNameLimit
Attribute |
描述 |
Name |
http://www.oracle.com/xml/jaxp/properties/maxXMLNameLimit |
定义 |
Limit the maximum size of XML names, including element name, attribute name
and namespace prefix and URI. |
值 |
A positive integer. A value less than or equal to 0 indicates no limit. If the value is not
an integer, a NumericFormatException is thrown. |
Default value |
1000 |
System property |
jdk.xml.maxXMLNameLimit |
Since |
7u91, 8u65 |
Legacy System Properties
These properties, which were introduced since JDK 5.0 and 6, continue to be supported for backward compatibility.
System Property |
Since |
New System Property |
entityExpansionLimit |
1.5 |
jdk.xml.entityExpansionLimit |
elementAttributeLimit |
1.5 |
jdk.xml.elementAttributeLimit |
maxOccurLimit |
1.6 |
jdk.xml.maxOccur |
{java.home}/lib/jaxp.properties
The system properties can be specified in the jaxp.properties file to define the behavior for all invocations of the JDK or JRE. The format is system-property-name=value. 例如:
jdk.xml.maxGeneralEntitySizeLimit=1024