Spec-Zone.ru › OpenJDK 25

Класс DefaultHandler

java.lang.Object
org.xml.sax.helpers.DefaultHandler
Все реализуемые интерфейсы:
ContentHandler, DTDHandler, EntityResolver, ErrorHandler
Прямые известные подклассы:
DefaultHandler2
public class DefaultHandler extends Object implements EntityResolver, DTDHandler, ContentHandler, ErrorHandler
Базовый класс по умолчанию для обработчиков событий SAX2.

Этот класс доступен в качестве базового класса для удобства разработки приложений SAX2: он предоставляет реализации по умолчанию для всех обратных вызовов в четырёх основных классах обработчиков SAX2:

  • EntityResolver
  • DTDHandler
  • ContentHandler
  • ErrorHandler

Разработчики приложений могут расширить этот класс, если им требуется реализовать только часть интерфейса; разработчики анализаторов могут создавать экземпляр этого класса для предоставления обработчиков по умолчанию, если приложение не предоставило собственные.

Этот класс заменяет устаревший класс SAX1 HandlerBase.

Начиная с версии:
1.4, SAX 2.0
См. также:
  • EntityResolver
  • DTDHandler
  • ContentHandler
  • ErrorHandler

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

Конструктор Описание
DefaultHandler()
Создаёт DefaultHandler.

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

Модификатор и тип Метод Описание
void characters(char[] ch, int start, int length)
Получает уведомление о символьных данных внутри элемента.
void endDocument()
Получает уведомление об окончании документа.
void endElement(String uri, String localName, String qName)
Получает уведомление об окончании элемента.
void endPrefixMapping(String prefix)
Получает уведомление об окончании сопоставления пространства имён.
void error(SAXParseException e)
Получает уведомление об исправимой ошибке анализатора.
void fatalError(SAXParseException e)
Сообщает о фатальной ошибке разбора XML.
void ignorableWhitespace(char[] ch, int start, int length)
Получает уведомление о незначащих пробельных символах в содержимом элемента.
void notationDecl(String name, String publicId, String systemId)
Получает уведомление об объявлении нотации.
void processingInstruction(String target, String data)
Получает уведомление об инструкции обработки.
InputSource resolveEntity(String publicId, String systemId)
Разрешает внешнюю сущность.
void setDocumentLocator(Locator locator)
Получает объект Locator для событий документа.
void skippedEntity(String name)
Получает уведомление о пропущенной сущности.
void startDocument()
Получает уведомление о начале документа.
void startElement(String uri, String localName, String qName, Attributes attributes)
Получает уведомление о начале элемента.
void startPrefixMapping(String prefix, String uri)
Получает уведомление о начале сопоставления пространства имён.
void unparsedEntityDecl(String name, String publicId, String systemId, String notationName)
Получает уведомление об объявлении неразобранной сущности.
void warning(SAXParseException e)
Получает предупреждение анализатора.

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

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

Методы, объявленные в интерфейсе ContentHandler

declaration

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

DefaultHandler

public DefaultHandler()
Создаёт DefaultHandler.

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

resolveEntity

public InputSource resolveEntity(String publicId, String systemId) throws IOException, SAXException
Разрешает внешнюю сущность.

Всегда возвращает null, чтобы анализатор использовал системный идентификатор, указанный в XML-документе. Этот метод реализует поведение SAX по умолчанию: разработчики приложений могут переопределить его в подклассе для выполнения специальных преобразований, например поиска в каталогах или перенаправления URI.

Определено в:
resolveEntity в интерфейсе EntityResolver
Параметры:
publicId — публичный идентификатор или null, если он недоступен.
systemId — системный идентификатор, указанный в XML-документе.
Возвращает:
Новый источник ввода или null, чтобы потребовать поведение по умолчанию.
Выбрасывает:
IOException — если при настройке нового источника ввода произошла ошибка.
SAXException — любое исключение SAX, возможно оборачивающее другое исключение.
См. также:
  • EntityResolver.resolveEntity(String, String)

notationDecl

public void notationDecl(String name, String publicId, String systemId) throws SAXException
Получает уведомление об объявлении нотации.

По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе, если хотят отслеживать нотации, объявленные в документе.

Определено в:
notationDecl в интерфейсе DTDHandler
Параметры:
name — имя нотации.
publicId — публичный идентификатор нотации или null, если он недоступен.
systemId — системный идентификатор нотации.
Выбрасывает:
SAXException — любое исключение SAX, возможно оборачивающее другое исключение.
См. также:
  • DTDHandler.notationDecl(String, String, String)

unparsedEntityDecl

public void unparsedEntityDecl(String name, String publicId, String systemId, String notationName) throws SAXException
Получает уведомление об объявлении неразобранной сущности.

По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе, чтобы отслеживать неразобранные сущности, объявленные в документе.

Определено в:
unparsedEntityDecl в интерфейсе DTDHandler
Параметры:
name — имя сущности.
publicId — публичный идентификатор сущности или null, если он недоступен.
systemId — системный идентификатор сущности.
notationName — имя связанной нотации.
Выбрасывает:
SAXException — любое исключение SAX, возможно оборачивающее другое исключение.
См. также:
  • DTDHandler.unparsedEntityDecl(String, String, String, String)

setDocumentLocator

public void setDocumentLocator(Locator locator)
Получает объект Locator для событий документа.

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

Определено в:
setDocumentLocator в интерфейсе ContentHandler
Параметры:
locator — локатор для всех событий документа SAX.
См. также:
  • ContentHandler.setDocumentLocator(Locator)
  • Locator

startDocument

public void startDocument() throws SAXException
Получает уведомление о начале документа.

По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе для выполнения определённых действий в начале документа (например, выделения корневого узла дерева или создания выходного файла).

Определено в:
startDocument в интерфейсе ContentHandler
Выбрасывает:
SAXException — любое исключение SAX, возможно оборачивающее другое исключение.
См. также:
  • ContentHandler.startDocument()

endDocument

public void endDocument() throws SAXException
Получает уведомление об окончании документа.

По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе для выполнения определённых действий в конце документа (например, завершения дерева или закрытия выходного файла).

Определено в:
endDocument в интерфейсе ContentHandler
Выбрасывает:
SAXException — любое исключение SAX, возможно оборачивающее другое исключение.
См. также:
  • ContentHandler.endDocument()

startPrefixMapping

public void startPrefixMapping(String prefix, String uri) throws SAXException
Получает уведомление о начале сопоставления пространства имён.

По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе для выполнения определённых действий в начале области действия каждого префикса пространства имён (например, сохранения сопоставления префикса).

Определено в:
startPrefixMapping в интерфейсе ContentHandler
Параметры:
prefix — объявляемый префикс пространства имён.
uri — URI пространства имён, сопоставленный префиксу.
Выбрасывает:
SAXException — любое исключение SAX, возможно оборачивающее другое исключение.
См. также:
  • ContentHandler.startPrefixMapping(String, String)

endPrefixMapping

public void endPrefixMapping(String prefix) throws SAXException
Получает уведомление об окончании сопоставления пространства имён.

По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе для выполнения определённых действий в конце каждого сопоставления префикса.

Определено в:
endPrefixMapping в интерфейсе ContentHandler
Параметры:
prefix — объявляемый префикс пространства имён.
Выбрасывает:
SAXException — любое исключение SAX, возможно оборачивающее другое исключение.
См. также:
  • ContentHandler.endPrefixMapping(String)

startElement

public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException
Получает уведомление о начале элемента.

По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе для выполнения определённых действий в начале каждого элемента (например, выделения нового узла дерева или записи выходных данных в файл).

Определено в:
startElement в интерфейсе ContentHandler
Параметры:
uri — URI пространства имён или пустая строка, если у элемента нет URI пространства имён либо обработка пространств имён не выполняется.
localName — локальное имя (без префикса) или пустая строка, если обработка пространств имён не выполняется.
qName — квалифицированное имя (с префиксом) или пустая строка, если квалифицированные имена недоступны.
attributes — атрибуты, присоединённые к элементу. Если атрибутов нет, это должен быть пустой объект Attributes.
Выбрасывает:
SAXException — любое исключение SAX, возможно оборачивающее другое исключение.
См. также:
  • ContentHandler.startElement(String, String, String, Attributes)

endElement

public void endElement(String uri, String localName, String qName) throws SAXException
Получает уведомление об окончании элемента.

По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе для выполнения определённых действий в конце каждого элемента (например, завершения узла дерева или записи выходных данных в файл).

Определено в:
endElement в интерфейсе ContentHandler
Параметры:
uri — URI пространства имён или пустая строка, если у элемента нет URI пространства имён либо обработка пространств имён не выполняется.
localName — локальное имя (без префикса) или пустая строка, если обработка пространств имён не выполняется.
qName — квалифицированное имя (с префиксом) или пустая строка, если квалифицированные имена недоступны.
Выбрасывает:
SAXException — любое исключение SAX, возможно оборачивающее другое исключение.
См. также:
  • ContentHandler.endElement(String, String, String)

characters

public void characters(char[] ch, int start, int length) throws SAXException
Получает уведомление о символьных данных внутри элемента.

По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод для выполнения определённых действий с каждым фрагментом символьных данных (например, добавления данных в узел или буфер либо вывода их в файл).

Определено в:
characters в интерфейсе ContentHandler
Параметры:
ch — символы.
start — начальная позиция в массиве символов.
length — количество символов, используемых из массива.
Выбрасывает:
SAXException — любое исключение SAX, возможно оборачивающее другое исключение.
См. также:
  • ContentHandler.characters(char[], int, int)

ignorableWhitespace

public void ignorableWhitespace(char[] ch, int start, int length) throws SAXException
Получает уведомление о незначащих пробельных символах в содержимом элемента.

По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод для выполнения определённых действий с каждым фрагментом незначащих пробельных символов (например, добавления данных в узел или буфер либо вывода их в файл).

Определено в:
ignorableWhitespace в интерфейсе ContentHandler
Параметры:
ch — пробельные символы.
start — начальная позиция в массиве символов.
length — количество символов, используемых из массива.
Выбрасывает:
SAXException — любое исключение SAX, возможно оборачивающее другое исключение.
См. также:
  • ContentHandler.ignorableWhitespace(char[], int, int)

processingInstruction

public void processingInstruction(String target, String data) throws SAXException
Получает уведомление об инструкции обработки.

По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе для выполнения определённых действий с каждой инструкцией обработки, например установки переменных состояния или вызова других методов.

Определено в:
processingInstruction в интерфейсе ContentHandler
Параметры:
target — цель инструкции обработки.
data — данные инструкции обработки или null, если они не указаны.
Выбрасывает:
SAXException — любое исключение SAX, возможно оборачивающее другое исключение.
См. также:
  • ContentHandler.processingInstruction(String, String)

skippedEntity

public void skippedEntity(String name) throws SAXException
Получает уведомление о пропущенной сущности.

По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе для выполнения определённых действий с каждой инструкцией обработки, например установки переменных состояния или вызова других методов.

Определено в:
skippedEntity в интерфейсе ContentHandler
Параметры:
name — имя пропущенной сущности.
Выбрасывает:
SAXException — любое исключение SAX, возможно оборачивающее другое исключение.
См. также:
  • ContentHandler.processingInstruction(String, String)

warning

public void warning(SAXParseException e) throws SAXException
Получает предупреждение анализатора.

Реализация по умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе для выполнения определённых действий с каждым предупреждением, например записи сообщения в файл журнала или вывода его на консоль.

Определено в:
warning в интерфейсе ErrorHandler
Параметры:
e — сведения о предупреждении, представленные в виде исключения.
Выбрасывает:
SAXException — любое исключение SAX, возможно оборачивающее другое исключение.
См. также:
  • ErrorHandler.warning(SAXParseException)
  • SAXParseException

error

public void error(SAXParseException e) throws SAXException
Получает уведомление об исправимой ошибке анализатора.

Реализация по умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе для выполнения определённых действий с каждой ошибкой, например записи сообщения в файл журнала или вывода его на консоль.

Определено в:
error в интерфейсе ErrorHandler
Параметры:
e — сведения об ошибке, представленные в виде исключения.
Выбрасывает:
SAXException — любое исключение SAX, возможно оборачивающее другое исключение.
См. также:
  • ErrorHandler.warning(SAXParseException)
  • SAXParseException

fatalError

public void fatalError(SAXParseException e) throws SAXException
Сообщает о фатальной ошибке разбора XML.

Реализация по умолчанию выбрасывает SAXParseException. Разработчики приложений могут переопределить этот метод в подклассе, если им требуется выполнять определённые действия при каждой фатальной ошибке (например, собирать все ошибки в один отчёт): в любом случае после вызова этого метода приложение должно прекратить всю обычную обработку, поскольку документ больше нельзя считать достоверным, а анализатор может перестать сообщать о событиях разбора.

Определено в:
fatalError в интерфейсе ErrorHandler
Параметры:
e — сведения об ошибке, представленные в виде исключения.
Выбрасывает:
SAXException — любое исключение SAX, возможно оборачивающее другое исключение.
См. также:
  • ErrorHandler.fatalError(SAXParseException)
  • SAXParseException

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по 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/org/xml/sax/helpers/DefaultHandler.html

Spec-Zone.ru

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