Класс 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.
Этот модуль, как исходный код, так и документация, находится в общественном достоянии и не имеет ГАРАНТИЙ. См. http://www.saxproject.org для получения дополнительной информации.
Этот класс доступен в качестве удобного базового класса для приложений SAX2: он предоставляет реализацию по умолчанию для всех обратных вызовов в четырёх основных классах обработчиков SAX2:
Авторы приложений могут расширить этот класс, когда им нужно реализовать только часть интерфейса; авторы парсеров могут создать экземпляр этого класса для предоставления обработчиков по умолчанию, если приложение не предоставило свои собственные.
Этот класс заменяет устаревший класс SAX1 HandlerBase.
- С:
- 1.4, SAX 2.0
- См. также:
-
EntityResolver,DTDHandler,ContentHandler,ErrorHandler
Конструкторы
| Конструктор | Описание |
|---|---|
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) | Получение уведомления об предупреждении парсера. |
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait Конструкторы
DefaultHandler
public 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(java.lang.String, java.lang.String)
notationDecl
public void notationDecl(String name,
String publicId,
String systemId)
throws SAXException Получить уведомление о декларации обозначения.
По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе, если они хотят отслеживать обозначения, объявленные в документе.
- Указано в:
-
notationDeclв интерфейсеDTDHandler - Параметры:
-
name- Имя обозначения. -
publicId- Открытый идентификатор обозначения или null, если он недоступен. -
systemId- Системный идентификатор обозначения. - Исключения:
-
SAXException- Любое исключение SAX, возможно, обертывающее другое исключение. - См. также:
DTDHandler.notationDecl(java.lang.String, java.lang.String, java.lang.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(java.lang.String, java.lang.String, java.lang.String, java.lang.String)
setDocumentLocator
public void setDocumentLocator(Locator locator)
Получить объект Locator для событий документа.
По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе, если они хотят сохранить локатор для использования с другими событиями документа.
- Указано в:
-
setDocumentLocatorв интерфейсеContentHandler - Параметры:
-
locator- Локатор всех событий SAX документа. - См. также:
-
ContentHandler.setDocumentLocator(org.xml.sax.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(java.lang.String, java.lang.String)
endPrefixMapping
public void endPrefixMapping(String prefix)
throws SAXException Получить уведомление об окончании сопоставления пространств имён.
По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе, чтобы выполнить определенные действия в конце каждого сопоставления префиксов.
- Указано в:
-
endPrefixMappingв интерфейсеContentHandler - Параметры:
-
prefix- Префикс пространства имён, который объявляется. - Исключения:
-
SAXException- Любое исключение SAX, возможно, обертывающее другое исключение. - См. также:
ContentHandler.endPrefixMapping(java.lang.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(java.lang.String, java.lang.String, java.lang.String, org.xml.sax.Attributes)
endElement
public void endElement(String uri,
String localName,
String qName)
throws SAXException Получить уведомление об окончании элемента.
По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе, чтобы выполнить определенные действия в конце каждого элемента (например, завершение узла дерева или запись вывода в файл).
- Указано в:
-
endElementв интерфейсеContentHandler - Параметры:
-
uri- URI пространства имён или пустая строка, если у элемента нет URI пространства имён или если обработка пространства имён не выполняется. -
localName- Локальное имя (без префикса) или пустая строка, если обработка пространства имён не выполняется. -
qName- Квалифицированное имя (с префиксом) или пустая строка, если квалифицированные имена недоступны. - Исключения:
-
SAXException- Любое исключение SAX, возможно, обертывающее другое исключение. - См. также:
ContentHandler.endElement(java.lang.String, java.lang.String, java.lang.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(java.lang.String, java.lang.String)
skippedEntity
public void skippedEntity(String name)
throws SAXException Получить уведомление о пропущенном элементе.
По умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе, чтобы выполнить определённые действия для каждого пропущенного элемента, такие как установка переменных состояния или вызов других методов.
- Определено в:
-
skippedEntityв интерфейсеContentHandler - Параметры:
-
name- Имя пропущенного элемента. - Исключения:
-
SAXException- Любое исключение SAX, возможно, обертывающее другое исключение. - См. также:
ContentHandler.processingInstruction(java.lang.String, java.lang.String)
warning
public void warning(SAXParseException e)
throws SAXException Получить уведомление о предупреждении парсера.
Метод по умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе, чтобы выполнить определенные действия для каждого предупреждения, например, добавить сообщение в файл журнала или вывести его на консоль.
- Определено в:
-
warningв интерфейсеErrorHandler - Параметры:
-
e- Информация о предупреждении, закодированная как исключение. - Исключения:
-
SAXException- Любое исключение SAX, возможно, обертывающее другое исключение. - См. также:
-
ErrorHandler.warning(org.xml.sax.SAXParseException),SAXParseException
error
public void error(SAXParseException e)
throws SAXException Получить уведомление о поправимой ошибке парсера.
Метод по умолчанию ничего не делает. Разработчики приложений могут переопределить этот метод в подклассе, чтобы выполнить определенные действия для каждой ошибки, например, добавить сообщение в файл журнала или вывести его на консоль.
- Определено в:
-
errorв интерфейсеErrorHandler - Параметры:
-
e- Информация об ошибке, закодированная как исключение. - Исключения:
-
SAXException- Любое исключение SAX, возможно, обертывающее другое исключение. - См. также:
-
ErrorHandler.warning(org.xml.sax.SAXParseException),SAXParseException
fatalError
public void fatalError(SAXParseException e)
throws SAXException Сообщить об ошибке разбора XML.
Метод по умолчанию выбрасывает SAXParseException. Разработчики приложений могут переопределить этот метод в подклассе, если им необходимо выполнить определенные действия для каждой критической ошибки (например, собрать все ошибки в одном отчете): в любом случае приложение должно остановить всю обычную обработку при вызове этого метода, поскольку документ больше не надежен, и парсер больше не может сообщать о событиях разбора.
- Определено в:
-
fatalErrorв интерфейсеErrorHandler - Параметры:
-
e- Информация об ошибке, закодированная как исключение. - Исключения:
-
SAXException- Любое исключение SAX, возможно, обертывающее другое исключение. - См. также:
-
ErrorHandler.fatalError(org.xml.sax.SAXParseException),SAXParseException
© 1993, 2020, 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/11/docs/api/java.xml/org/xml/sax/helpers/DefaultHandler.html