Spec-Zone.ru › OpenJDK 25

Класс XMLInputFactory

java.lang.Object
javax.xml.stream.XMLInputFactory
public abstract class XMLInputFactory extends Object
Определяет абстрактную реализацию фабрики для создания потоков. В следующей таблице перечислены стандартные свойства этой спецификации. Требуемый уровень поддержки каждого свойства зависит от реализации. Требуемый уровень поддержки описан в столбце «Обязательно».
Параметры конфигурации
Имя свойства Поведение Тип возвращаемого значения Значение по умолчанию Обязательно
javax.xml.stream.isValidating Включает/отключает проверку DTD, специфичную для реализации Boolean False Нет
javax.xml.stream.isNamespaceAware Включает/отключает обработку пространств имен для поддержки XML 1.0 Boolean True True (обязательно) / False (необязательно)
javax.xml.stream.isCoalescing Требует от обработчика объединять смежные фрагменты символьных данных Boolean False Да
javax.xml.stream.isReplacingEntityReferences заменяет ссылки на внутренние сущности их замещающим текстом и сообщает о них как о символах Boolean True Да
javax.xml.stream.isSupportingExternalEntities Разрешает внешние анализируемые сущности Boolean Не указано Да
javax.xml.stream.supportDTD Используйте это свойство, чтобы запросить обработчики, не поддерживающие DTD Boolean True Да
javax.xml.stream.reporter задает/возвращает реализацию XMLReporter javax.xml.stream.XMLReporter Null Да
javax.xml.stream.resolver задает/возвращает реализацию интерфейса XMLResolver javax.xml.stream.XMLResolver Null Да
javax.xml.stream.allocator задает/возвращает реализацию интерфейса XMLEventAllocator javax.xml.stream.util.XMLEventAllocator Null Да
Начиная с:
1.6
См. также:
  • XMLOutputFactory
  • XMLEventReader
  • XMLStreamReader
  • EventFilter
  • XMLReporter
  • XMLResolver
  • XMLEventAllocator

Краткое описание полей

Модификатор и тип Поле Описание
static final String ALLOCATOR
Свойство, используемое для задания/получения реализации распределителя
static final String IS_COALESCING
Свойство, требующее от анализатора объединять смежные фрагменты символьных данных
static final String IS_NAMESPACE_AWARE
Свойство, используемое для включения/отключения поддержки пространств имен; оно предназначено для поддержки документов XML 1.0, при этом поддержка обязательна только для значения true
static final String IS_REPLACING_ENTITY_REFERENCES
Требует от анализатора заменять ссылки на внутренние сущности их замещающим текстом и сообщать о них как о символах
static final String IS_SUPPORTING_EXTERNAL_ENTITIES
Свойство, требующее от анализатора разрешать внешние анализируемые сущности
static final String IS_VALIDATING
Свойство, используемое для включения/отключения проверки, специфичной для реализации
static final String REPORTER
Свойство, используемое для задания/получения реализации интерфейса XMLReporter
static final String RESOLVER
Свойство, используемое для задания/получения реализации XMLResolver
static final String SUPPORT_DTD
Свойство, требующее от анализатора поддержки DTD

Краткое описание конструкторов

XMLInputFactory()
Модификатор Конструктор Описание
protected
Защищенный конструктор для предотвращения создания экземпляров.

Краткое описание методов

Модификатор и тип Метод Описание
abstract XMLEventReader createFilteredReader(XMLEventReader reader, EventFilter filter)
Создает отфильтрованный читатель событий, применяющий фильтр к читателю событий
abstract XMLStreamReader createFilteredReader(XMLStreamReader reader, StreamFilter filter)
Создает отфильтрованный читатель, применяющий фильтр к читателю
abstract XMLEventReader createXMLEventReader(InputStream stream)
Создает новый XMLEventReader из java.io.InputStream
abstract XMLEventReader createXMLEventReader(InputStream stream, String encoding)
Создает новый XMLEventReader из java.io.InputStream
abstract XMLEventReader createXMLEventReader(Reader reader)
Создает новый XMLEventReader из читателя.
abstract XMLEventReader createXMLEventReader(String systemId, InputStream stream)
Создает новый XMLEventReader из java.io.InputStream
abstract XMLEventReader createXMLEventReader(String systemId, Reader reader)
Создает новый XMLEventReader из читателя.
abstract XMLEventReader createXMLEventReader(XMLStreamReader reader)
Создает новый XMLEventReader из XMLStreamReader.
abstract XMLEventReader createXMLEventReader(Source source)
Создает новый XMLEventReader из источника JAXP.
abstract XMLStreamReader createXMLStreamReader(InputStream stream)
Создает новый XMLStreamReader из java.io.InputStream.
abstract XMLStreamReader createXMLStreamReader(InputStream stream, String encoding)
Создает новый XMLStreamReader из java.io.InputStream.
abstract XMLStreamReader createXMLStreamReader(Reader reader)
Создает новый XMLStreamReader из читателя.
abstract XMLStreamReader createXMLStreamReader(String systemId, InputStream stream)
Создает новый XMLStreamReader из java.io.InputStream.
abstract XMLStreamReader createXMLStreamReader(String systemId, Reader reader)
Создает новый XMLStreamReader из java.io.InputStream.
abstract XMLStreamReader createXMLStreamReader(Source source)
Создает новый XMLStreamReader из источника JAXP.
abstract XMLEventAllocator getEventAllocator()
Возвращает распределитель, используемый потоками, созданными этой фабрикой
abstract Object getProperty(String name)
Возвращает значение функции/свойства базовой реализации
abstract XMLReporter getXMLReporter()
Объект reporter, который будет установлен для любого XMLStreamReader или XMLEventReader, созданного экземпляром этой фабрики.
abstract XMLResolver getXMLResolver()
Объект resolver, который будет установлен для любого XMLStreamReader или XMLEventReader, созданного экземпляром этой фабрики.
abstract boolean isPropertySupported(String name)
Запрашивает набор свойств, поддерживаемых этой фабрикой.
static XMLInputFactory newDefaultFactory()
Создает новый экземпляр встроенной реализации XMLInputFactory, используемой по умолчанию в системе.
static XMLInputFactory newFactory()
Создает новый экземпляр фабрики.
static XMLInputFactory newFactory(String factoryId, ClassLoader classLoader)
Создает новый экземпляр фабрики.
static XMLInputFactory newInstance()
Создает новый экземпляр фабрики точно таким же способом, как и метод newFactory().
static XMLInputFactory newInstance(String factoryId, ClassLoader classLoader)
Устарело.
Этот метод признан устаревшим для обеспечения согласованности API.
abstract void setEventAllocator(XMLEventAllocator allocator)
Задает пользовательский распределитель событий
abstract void setProperty(String name, Object value)
Позволяет пользователю задать определенную функцию/свойство базовой реализации.
abstract void setXMLReporter(XMLReporter reporter)
Объект reporter, который будет установлен для любого XMLStreamReader или XMLEventReader, созданного экземпляром этой фабрики.
abstract void setXMLResolver(XMLResolver resolver)
Объект resolver, который будет установлен для любого XMLStreamReader или XMLEventReader, созданного экземпляром этой фабрики.

Методы, объявленные в классе Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание полей

IS_NAMESPACE_AWARE

public static final String IS_NAMESPACE_AWARE
Свойство для включения или отключения поддержки пространств имён; оно предназначено для поддержки документов XML 1.0. Поддерживаться должно только значение true
См. также:
  • Значения константных полей

IS_VALIDATING

public static final String IS_VALIDATING
Свойство для включения или отключения проверки, зависящей от реализации
См. также:
  • Значения константных полей

IS_COALESCING

public static final String IS_COALESCING
Свойство, требующее от анализатора объединять смежные секции символьных данных
См. также:
  • Значения константных полей

IS_REPLACING_ENTITY_REFERENCES

public static final String IS_REPLACING_ENTITY_REFERENCES
Требует от анализатора заменять ссылки на внутренние сущности их текстом-заменителем и сообщать о них как о символах
См. также:
  • Значения константных полей

IS_SUPPORTING_EXTERNAL_ENTITIES

public static final String IS_SUPPORTING_EXTERNAL_ENTITIES
Свойство, требующее от анализатора разрешать внешние анализируемые сущности
См. также:
  • Значения константных полей

SUPPORT_DTD

public static final String SUPPORT_DTD
Свойство, требующее от анализатора поддержки DTD
См. также:
  • Значения константных полей

REPORTER

public static final String REPORTER
Свойство для задания или получения реализации интерфейса XMLReporter
См. также:
  • Значения константных полей

RESOLVER

public static final String RESOLVER
Свойство для задания или получения реализации XMLResolver
См. также:
  • Значения константных полей

ALLOCATOR

public static final String ALLOCATOR
Свойство для задания или получения реализации распределителя
См. также:
  • Значения константных полей

Подробное описание конструкторов

XMLInputFactory

protected XMLInputFactory()
Защищённый конструктор, предотвращающий создание экземпляров. Вместо него используйте newFactory().

Подробное описание методов

newDefaultFactory

public static XMLInputFactory newDefaultFactory()
Создаёт новый экземпляр встроенной реализации XMLInputFactory, используемой по умолчанию в системе.
Возвращает:
Новый экземпляр встроенной реализации XMLInputFactory, используемой по умолчанию в системе.
С версии:
9

newInstance

public static XMLInputFactory newInstance() throws FactoryConfigurationError
Создаёт новый экземпляр фабрики точно так же, как метод newFactory().
Возвращает:
экземпляр XMLInputFactory
Выбрасывает:
FactoryConfigurationError — если не удаётся загрузить экземпляр этой фабрики

newFactory

public static XMLInputFactory newFactory() throws FactoryConfigurationError
Создаёт новый экземпляр фабрики. Этот метод использует механизм поиска JAXP, чтобы определить класс реализации XMLInputFactory, который необходимо загрузить.

Получив ссылку на XMLInputFactory, приложение может использовать фабрику для настройки и получения экземпляров потоков.

Возвращает:
экземпляр XMLInputFactory
Выбрасывает:
FactoryConfigurationError — в случае ошибки конфигурации службы, а также если реализация недоступна или не может быть создана.

newInstance

@Deprecated(since="1.7") public static XMLInputFactory newInstance(String factoryId, ClassLoader classLoader) throws FactoryConfigurationError
Устарело.
Этот метод объявлен устаревшим для обеспечения согласованности API. Все методы newInstance заменены соответствующими методами newFactory. Замена — метод newFactory(java.lang.String, java.lang.ClassLoader) — не меняет поведение.
Создаёт новый экземпляр фабрики.
Параметры:
factoryId — имя искомой фабрики, совпадающее с именем свойства
classLoader — используемый classLoader
Возвращает:
реализацию фабрики
Выбрасывает:
FactoryConfigurationError — если не удаётся загрузить экземпляр этой фабрики

newFactory

public static XMLInputFactory newFactory(String factoryId, ClassLoader classLoader) throws FactoryConfigurationError
Создаёт новый экземпляр фабрики. Если аргумент classLoader равен null, используется ContextClassLoader.

Для определения класса реализации XMLInputFactory, который необходимо загрузить, этот метод выполняет следующий упорядоченный поиск:

  • Используется значение системного свойства, указанного в factoryId.

  • Используется значение свойства factoryId, заданное в файле конфигурации (по умолчанию — jaxp.properties). Если файл существует и в нём указано свойство factoryId, его значение будет использовано в качестве класса реализации.

  • Если factoryId равно "javax.xml.stream.XMLInputFactory", для поиска реализации службы с помощью указанного ClassLoader используется механизм загрузки поставщиков служб, определённый классом ServiceLoader. Если classLoader равно null, применяется механизм загрузки по умолчанию: механизм загрузки поставщиков служб использует загрузчик классов контекста текущего потока, чтобы попытаться загрузить службу. Если загрузчик классов контекста равен null, используется системный загрузчик классов.

  • В противном случае выбрасывается исключение FactoryConfigurationError.

Обратите внимание: это новый метод, заменяющий устаревший метод newInstance(String factoryId, ClassLoader classLoader). Этот метод-замена не меняет поведение по сравнению с устаревшим методом.

Примечание к API:
Параметр factoryId, определённый здесь, не согласуется с параметрами других фабрик JAXP, у которых первый параметр — полное имя класса фабрики, предоставляющего её реализацию.
Параметры:
factoryId — имя искомой фабрики, совпадающее с именем свойства
classLoader — используемый classLoader
Возвращает:
реализацию фабрики
Выбрасывает:
FactoryConfigurationError — в случае ошибки конфигурации службы, а также если реализация недоступна или не может быть создана.
FactoryConfigurationError — если не удаётся загрузить экземпляр этой фабрики

createXMLStreamReader

public abstract XMLStreamReader createXMLStreamReader(Reader reader) throws XMLStreamException
Создаёт новый XMLStreamReader из средства чтения.
Параметры:
reader — XML-данные для чтения
Возвращает:
экземпляр XMLStreamReader
Выбрасывает:
XMLStreamException — если произошла ошибка

createXMLStreamReader

public abstract XMLStreamReader createXMLStreamReader(Source source) throws XMLStreamException
Создаёт новый XMLStreamReader из источника JAXP. Этот метод необязателен.
Параметры:
source — источник для чтения
Возвращает:
экземпляр XMLStreamReader
Выбрасывает:
UnsupportedOperationException — если этот метод не поддерживается данной XMLInputFactory
XMLStreamException — если произошла ошибка

createXMLStreamReader

public abstract XMLStreamReader createXMLStreamReader(InputStream stream) throws XMLStreamException
Создаёт новый XMLStreamReader из java.io.InputStream.
Параметры:
stream — InputStream для чтения
Возвращает:
экземпляр XMLStreamReader
Выбрасывает:
XMLStreamException — если произошла ошибка

createXMLStreamReader

public abstract XMLStreamReader createXMLStreamReader(InputStream stream, String encoding) throws XMLStreamException
Создаёт новый XMLStreamReader из java.io.InputStream.
Параметры:
stream — InputStream для чтения
encoding — кодировка символов потока
Возвращает:
экземпляр XMLStreamReader
Выбрасывает:
XMLStreamException — если произошла ошибка

createXMLStreamReader

public abstract XMLStreamReader createXMLStreamReader(String systemId, InputStream stream) throws XMLStreamException
Создаёт новый XMLStreamReader из java.io.InputStream.
Параметры:
systemId — системный идентификатор потока
stream — InputStream для чтения
Возвращает:
экземпляр XMLStreamReader
Выбрасывает:
XMLStreamException — если произошла ошибка

createXMLStreamReader

public abstract XMLStreamReader createXMLStreamReader(String systemId, Reader reader) throws XMLStreamException
Создаёт новый XMLStreamReader из java.io.InputStream.
Параметры:
systemId — системный идентификатор потока
reader — InputStream для чтения
Возвращает:
экземпляр XMLStreamReader
Выбрасывает:
XMLStreamException — если произошла ошибка

createXMLEventReader

public abstract XMLEventReader createXMLEventReader(Reader reader) throws XMLStreamException
Создаёт новый XMLEventReader из средства чтения.
Параметры:
reader — XML-данные для чтения
Возвращает:
экземпляр XMLEventReader
Выбрасывает:
XMLStreamException — если произошла ошибка

createXMLEventReader

public abstract XMLEventReader createXMLEventReader(String systemId, Reader reader) throws XMLStreamException
Создаёт новый XMLEventReader из средства чтения.
Параметры:
systemId — системный идентификатор входных данных
reader — XML-данные для чтения
Возвращает:
экземпляр XMLEventReader
Выбрасывает:
XMLStreamException — если произошла ошибка

createXMLEventReader

public abstract XMLEventReader createXMLEventReader(XMLStreamReader reader) throws XMLStreamException
Создаёт новый XMLEventReader из XMLStreamReader. После использования XMLStreamReader для создания экземпляра XMLEventReader, возвращаемого этим методом, XMLStreamReader нельзя использовать.
Параметры:
reader — XMLStreamReader для чтения (его нельзя изменять)
Возвращает:
новый XMLEventReader
Выбрасывает:
XMLStreamException — если произошла ошибка

createXMLEventReader

public abstract XMLEventReader createXMLEventReader(Source source) throws XMLStreamException
Создаёт новый XMLEventReader из источника JAXP. Поддержка этого метода необязательна.
Параметры:
source — источник для чтения
Возвращает:
экземпляр XMLEventReader
Выбрасывает:
XMLStreamException — если произошла ошибка
UnsupportedOperationException — если этот метод не поддерживается данной XMLInputFactory

createXMLEventReader

public abstract XMLEventReader createXMLEventReader(InputStream stream) throws XMLStreamException
Создаёт новый XMLEventReader из java.io.InputStream
Параметры:
stream — InputStream для чтения
Возвращает:
экземпляр XMLEventReader
Выбрасывает:
XMLStreamException — если произошла ошибка

createXMLEventReader

public abstract XMLEventReader createXMLEventReader(InputStream stream, String encoding) throws XMLStreamException
Создаёт новый XMLEventReader из java.io.InputStream
Параметры:
stream — InputStream для чтения
encoding — кодировка символов потока
Возвращает:
экземпляр XMLEventReader
Выбрасывает:
XMLStreamException — если произошла ошибка

createXMLEventReader

public abstract XMLEventReader createXMLEventReader(String systemId, InputStream stream) throws XMLStreamException
Создаёт новый XMLEventReader из java.io.InputStream
Параметры:
systemId — системный идентификатор потока
stream — InputStream для чтения
Возвращает:
экземпляр XMLEventReader
Выбрасывает:
XMLStreamException — если произошла ошибка

createFilteredReader

public abstract XMLStreamReader createFilteredReader(XMLStreamReader reader, StreamFilter filter) throws XMLStreamException
Создаёт фильтрованный читатель, оборачивающий читатель заданным фильтром
Параметры:
reader — читатель для фильтрации
filter — фильтр, применяемый к читателю
Возвращает:
экземпляр XMLEventReader
Выбрасывает:
XMLStreamException — если произошла ошибка

createFilteredReader

public abstract XMLEventReader createFilteredReader(XMLEventReader reader, EventFilter filter) throws XMLStreamException
Создаёт фильтрованный читатель событий, оборачивающий читатель событий заданным фильтром
Параметры:
reader — читатель событий для обёртывания
filter — фильтр, применяемый к читателю событий
Возвращает:
экземпляр XMLEventReader
Выбрасывает:
XMLStreamException — если произошла ошибка

getXMLResolver

public abstract XMLResolver getXMLResolver()
Обработчик, который будет установлен для любого XMLStreamReader или XMLEventReader, созданного этим экземпляром фабрики.
Возвращает:
экземпляр XMLResolver

setXMLResolver

public abstract void setXMLResolver(XMLResolver resolver)
Обработчик, который будет установлен для любого XMLStreamReader или XMLEventReader, созданного этим экземпляром фабрики.
Параметры:
resolver — обработчик для разрешения ссылок

getXMLReporter

public abstract XMLReporter getXMLReporter()
Средство отчётности, которое будет установлено для любого XMLStreamReader или XMLEventReader, созданного этим экземпляром фабрики.
Возвращает:
экземпляр XMLReporter

setXMLReporter

public abstract void setXMLReporter(XMLReporter reporter)
Средство отчётности, которое будет установлено для любого XMLStreamReader или XMLEventReader, созданного этим экземпляром фабрики.
Параметры:
reporter — средство для сообщения о некритических ошибках

setProperty

public abstract void setProperty(String name, Object value) throws IllegalArgumentException
Позволяет пользователю задать определённую возможность или свойство базовой реализации. Базовая реализация не обязана поддерживать все значения каждого свойства, описанного в спецификации, и может использовать IllegalArgumentException, чтобы сообщить о том, что неподдерживаемому свойству нельзя присвоить указанное значение.

Все реализации, соответствующие JAXP 1.5 или более поздней версии, должны поддерживать свойство XMLConstants.ACCESS_EXTERNAL_DTD.

  • Доступ к внешним DTD и внешним ссылкам на сущности ограничивается протоколами, указанными в свойстве. Если во время анализа доступ запрещён из-за ограничения, заданного этим свойством, метод XMLStreamReader.next() или XMLEventReader.nextEvent() выбросит исключение XMLStreamException.

Параметры:
name — имя свойства (не может быть null)
value — значение свойства
Выбрасывает:
IllegalArgumentException — если свойство не поддерживается

getProperty

public abstract Object getProperty(String name) throws IllegalArgumentException
Получает значение возможности или свойства из базовой реализации
Параметры:
name — имя свойства (не может быть null)
Возвращает:
значение свойства
Выбрасывает:
IllegalArgumentException — если свойство не поддерживается

isPropertySupported

public abstract boolean isPropertySupported(String name)
Запрашивает набор свойств, поддерживаемых этой фабрикой.
Параметры:
name — имя свойства (не может быть null)
Возвращает:
true, если свойство поддерживается, и false в противном случае

setEventAllocator

public abstract void setEventAllocator(XMLEventAllocator allocator)
Задаёт пользовательский распределитель событий
Параметры:
allocator — пользовательский распределитель

getEventAllocator

public abstract XMLEventAllocator getEventAllocator()
Получает распределитель, используемый потоками, созданными этой фабрикой
Возвращает:
экземпляр XMLEventAllocator

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, в том числе концептуальные обзоры, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторское право © 1993, 2025, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/25/docs/api/java.xml/javax/xml/stream/XMLInputFactory.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API