Класс DefaultHandler
- Все реализованные интерфейсы:
-
ContentHandler,DTDHandler,EntityResolver,ErrorHandler
- Прямые известные подклассы:
DefaultHandler2
public class DefaultHandler extends Object implements EntityResolver, DTDHandler, ContentHandler, ErrorHandler
Этот класс доступен в качестве удобного базового класса для приложений SAX2: он предоставляет реализации по умолчанию для всех обратных вызовов в четырёх основных классах обработчиков SAX2:
Разработчики приложений могут расширять этот класс, когда им нужно реализовать только часть интерфейса; разработчики парсеров могут создать экземпляр этого класса, чтобы предоставить обработчики по умолчанию, когда приложение не предоставило своих собственных.
Этот класс заменяет устаревший класс SAX1 HandlerBase.
- С:
- 1.4, SAX 2.0
- См. также:
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
DefaultHandler() |
Создаёт DefaultHandler. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
characters |
Получает уведомление о символьных данных внутри элемента. |
void |
endDocument() |
Получает уведомление об окончании документа. |
void |
endElement |
Получает уведомление об окончании элемента. |
void |
endPrefixMapping |
Получает уведомление об окончании сопоставления пространства имён. |
void |
error |
Получает уведомление о восстановимом ошибке парсера. |
void |
fatalError |
Сообщает о фатальной ошибке разбора XML. |
void |
ignorableWhitespace |
Получает уведомление о пропускаемых пробелах в содержимом элемента. |
void |
notationDecl |
Получает уведомление об объявлении обозначения. |
void |
processingInstruction |
Получает уведомление об обработке инструкции. |
InputSource |
resolveEntity |
Разрешает внешнюю сущность. |
void |
setDocumentLocator |
Получает объект Locator для событий документа. |
void |
skippedEntity |
Получает уведомление о пропущенной сущности. |
void |
startDocument() |
Получает уведомление о начале документа. |
void |
startElement |
Получает уведомление о начале элемента. |
void |
startPrefixMapping |
Получает уведомление о начале сопоставления пространства имён. |
void |
unparsedEntityDecl |
Получает уведомление об объявлении необработанной сущности. |
void |
warning |
Получает уведомление о предупреждении парсера. |
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Методы, объявленные в интерфейсе org.xml.sax.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, возможно, содержащее другое исключение. - См. также:
notationDecl
public void notationDecl(String name, String publicId, String systemId) throws SAXException
По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе, если им необходимо отслеживать нотации, объявленные в документе.
- Определено в:
-
notationDeclв интерфейсеDTDHandler - Параметры:
-
name- Название нотации. -
publicId- Публичный идентификатор нотации или null, если он недоступен. -
systemId- Системный идентификатор нотации. - Исключения:
-
SAXException- Любое исключение SAX, возможно, содержащее другое исключение. - См. также:
unparsedEntityDecl
public void unparsedEntityDecl(String name, String publicId, String systemId, String notationName) throws SAXException
По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе для отслеживания необработанных сущностей, объявленных в документе.
- Определено в:
-
unparsedEntityDeclв интерфейсеDTDHandler - Параметры:
-
name- Имя сущности. -
publicId- Публичный идентификатор сущности или null, если он недоступен. -
systemId- Системный идентификатор сущности. -
notationName- Название связанной нотации. - Исключения:
-
SAXException- Любое исключение SAX, возможно, содержащее другое исключение. - См. также:
setDocumentLocator
public void setDocumentLocator(Locator locator)
По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе, если они хотят сохранить локатор для использования с другими событиями документа.
- Определено в:
-
setDocumentLocatorв интерфейсеContentHandler - Параметры:
-
locator- Локатор для всех событий SAX документа. - См. также:
startDocument
public void startDocument() throws SAXException
По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе, чтобы выполнить определённые действия в начале документа (например, назначить корневой узел дерева или создать выходной файл).
- Определено в:
-
startDocumentв интерфейсеContentHandler - Исключения:
-
SAXException- Любое исключение SAX, возможно, содержащее другое исключение. - См. также:
endDocument
public void endDocument() throws SAXException
По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе, чтобы выполнить определённые действия в конце документа (например, завершить обработку дерева или закрыть выходной файл).
- Определено в:
-
endDocumentв интерфейсеContentHandler - Исключения:
-
SAXException- Любое исключение SAX, возможно, содержащее другое исключение. - См. также:
startPrefixMapping
public void startPrefixMapping(String prefix, String uri) throws SAXException
По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе, чтобы выполнить определённые действия в начале каждого пространства имён (например, сохранить сопоставление префиксов).
- Определено в:
-
startPrefixMappingв интерфейсеContentHandler - Параметры:
-
prefix- Префикс пространства имён, который объявляется. -
uri- URI пространства имён, сопоставленный с префиксом. - Исключения:
-
SAXException- Любое исключение SAX, возможно, содержащее другое исключение. - См. также:
endPrefixMapping
public void endPrefixMapping(String prefix) throws SAXException
По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе, чтобы выполнить определённые действия в конце каждого сопоставления префиксов.
- Определено в:
-
endPrefixMappingв интерфейсеContentHandler - Параметры:
-
prefix- Префикс пространства имён, который объявляется. - Исключения:
-
SAXException- Любое исключение SAX, возможно, содержащее другое исключение. - См. также:
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, возможно, содержащее другое исключение. - См. также:
endElement
public void endElement(String uri, String localName, String qName) throws SAXException
По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе, чтобы выполнить определённые действия в конце каждого элемента (например, завершить обработку узла дерева или записать выходные данные в файл).
- Определено в:
-
endElementв интерфейсеContentHandler - Параметры:
-
uri- URI пространства имён или пустая строка, если элемент не имеет URI пространства имён или обработка пространства имён не выполняется. -
localName- Локальное имя (без префикса) или пустая строка, если обработка пространства имён не выполняется. -
qName- Квалифицированное имя (с префиксом) или пустая строка, если квалифицированные имена недоступны. - Исключения:
-
SAXException- Любое исключение SAX, возможно, содержащее другое исключение. - См. также:
characters
public void characters(char[] ch, int start, int length) throws SAXException
По умолчанию, ничего не делает. Разработчики приложений могут переопределить этот метод, чтобы выполнить определенные действия для каждого фрагмента данных символов (например, добавить данные в узел или буфер или напечатать их в файл).
- Specified by:
-
charactersin interfaceContentHandler - Parameters:
-
ch- Символы. -
start- Начальная позиция в массиве символов. -
length- Количество символов для использования из массива символов. - Throws:
-
SAXException- Любое исключение SAX, возможно, обертывающее другое исключение. - See Also:
ignorableWhitespace
public void ignorableWhitespace(char[] ch, int start, int length) throws SAXException
По умолчанию, ничего не делает. Разработчики приложений могут переопределить этот метод, чтобы выполнить определенные действия для каждого фрагмента пропускаемого разделителя (например, добавить данные в узел или буфер или напечатать их в файл).
- Specified by:
-
ignorableWhitespacein interfaceContentHandler - Parameters:
-
ch- Символы пропускаемого разделителя. -
start- Начальная позиция в массиве символов. -
length- Количество символов для использования из массива символов. - Throws:
-
SAXException- Любое исключение SAX, возможно, обертывающее другое исключение. - See Also:
processingInstruction
public void processingInstruction(String target, String data) throws SAXException
По умолчанию, ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе, чтобы выполнить определенные действия для каждой инструкции обработки, например, установить переменные состояния или вызвать другие методы.
- Specified by:
-
processingInstructionin interfaceContentHandler - Parameters:
-
target- Цель инструкции обработки. -
data- Данные инструкции обработки, или null, если данные отсутствуют. - Throws:
-
SAXException- Любое исключение SAX, возможно, обертывающее другое исключение. - See Also:
skippedEntity
public void skippedEntity(String name) throws SAXException
По умолчанию, ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе, чтобы выполнить определенные действия для каждой инструкции обработки, например, установить переменные состояния или вызвать другие методы.
- Specified by:
-
skippedEntityin interfaceContentHandler - Parameters:
-
name- Имя пропущенной сущности. - Throws:
-
SAXException- Любое исключение SAX, возможно, обертывающее другое исключение. - See Also:
warning
public void warning(SAXParseException e) throws SAXException
По умолчанию, ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе, чтобы выполнить определенные действия для каждой ошибки, например, вставить сообщение в файл журнала или напечатать его в консоль.
- Specified by:
-
warningin interfaceErrorHandler - Parameters:
-
e- Информация об ошибке, закодированная как исключение. - Throws:
-
SAXException- Любое исключение SAX, возможно, обертывающее другое исключение. - See Also:
error
public void error(SAXParseException e) throws SAXException
По умолчанию, ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе, чтобы выполнить определенные действия для каждой ошибки, например, вставить сообщение в файл журнала или напечатать его в консоль.
- Specified by:
-
errorin interfaceErrorHandler - Parameters:
-
e- Информация об ошибке, закодированная как исключение. - Throws:
-
SAXException- Любое исключение SAX, возможно, обертывающее другое исключение. - See Also:
fatalError
public void fatalError(SAXParseException e) throws SAXException
По умолчанию, выбрасывает SAXParseException. Разработчики приложений могут переопределить этот метод в подклассе, если им нужно выполнить определенные действия для каждой критической ошибки (например, собрать все ошибки в один отчет): в любом случае, приложение должно остановить всю обычную обработку при вызове этого метода, так как документ больше не является надежным, и анализатор может больше не сообщать об событиях разбора.
- Specified by:
-
fatalErrorin interfaceErrorHandler - Parameters:
-
e- Информация об ошибке, закодированная как исключение. - Throws:
-
SAXException- Любое исключение SAX, возможно, обертывающее другое исключение. - See Also:
© 1993, 2021, 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/17/docs/api/java.xml/org/xml/sax/helpers/DefaultHandler.html