Класс DefaultHandler2

Все реализованные интерфейсы:
ContentHandler, DTDHandler, EntityResolver, ErrorHandler, DeclHandler, EntityResolver2, LexicalHandler
public class DefaultHandler2
extends DefaultHandler
implements LexicalHandler, DeclHandler, EntityResolver2

Этот класс расширяет базовый обработчик SAX2 для поддержки расширений SAX2 LexicalHandler, DeclHandler и EntityResolver2. За исключением переопределения оригинального метода SAX1 resolveEntity(), добавленные методы обработчика просто возвращают значение. Подклассы могут переопределять все методы по отдельности.

Этот модуль, как исходный код, так и документация, находится в общественном достоянии и не имеет ГАРАНТИЙ.

Примечание: этот класс может ещё узнать, что вызов ContentHandler.setDocumentLocator() может получить объект Locator2, а вызов ContentHandler.startElement() — объект Attributes2.

С момента:
1.5, SAX 2.0 (расширения 1.1 alpha)

Конструкторы

Конструктор Описание
DefaultHandler2()

Создает обработчик, игнорирующий все события разбора.

Методы

Модификатор и тип Метод Описание
InputSource getExternalSubset​(String name, String baseURI)

Сообщает парсеру, что если во входном документе не объявлена внешняя подсхема, то она не должна использоваться.

InputSource resolveEntity​(String publicId, String systemId)

Вызывает EntityResolver2.resolveEntity() с null именами сущности и базовым URI.

InputSource resolveEntity​(String name, String publicId, String baseURI, String systemId)

Сообщает парсеру разрешить systemId относительно baseURI и считать текст сущности из полученного абсолютного URI.

Методы, объявленные в классе org.xml.sax.helpers.DefaultHandler

characters, endDocument, endElement, endPrefixMapping, error, fatalError, ignorableWhitespace, notationDecl, processingInstruction, setDocumentLocator, skippedEntity, startDocument, startElement, startPrefixMapping, unparsedEntityDecl, warning

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

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

Методы, объявленные в интерфейсе org.xml.sax.ext.DeclHandler

attributeDecl, elementDecl, externalEntityDecl, internalEntityDecl

Методы, объявленные в интерфейсе org.xml.sax.ext.LexicalHandler

comment, endCDATA, endDTD, endEntity, startCDATA, startDTD, startEntity

Конструкторы

DefaultHandler2

public DefaultHandler2()

Создает обработчик, игнорирующий все события разбора.

Методы

getExternalSubset

public InputSource getExternalSubset(String name,
                                     String baseURI)
                              throws SAXException,
                                     IOException

Сообщает парсеру, что если во входном документе не объявлена внешняя подсхема, то она не должна использоваться.

Задано в:
getExternalSubset в интерфейсе EntityResolver2
Параметры:
name - Идентифицирует корневой элемент документа. Это имя взято из объявления DOCTYPE (если оно доступно) или из фактического корневого элемента.
baseURI - Базовый URI документа, служащий дополнительным указанием для выбора внешней подсхемы. Это всегда абсолютный URI, за исключением случая, когда он равен null, потому что XMLReader получил InputSource без него.
Возвращает:
Объект InputSource, описывающий новую внешнюю подсхему, которая должна быть использована парсером, или null, чтобы указать, что внешняя подсхема не предоставляется.
Исключения:
SAXException - Любое исключение SAX, возможно, обертывающее другое исключение.
IOException - Вероятно, указывает на неудачу создания нового потока ввода или читателя или некорректный URL.

resolveEntity

public InputSource resolveEntity(String name,
                                 String publicId,
                                 String baseURI,
                                 String systemId)
                          throws SAXException,
                                 IOException

Сообщает парсеру разрешить systemId относительно baseURI и считать текст сущности из полученного абсолютного URI. Обратите внимание, что, так как более старый метод DefaultHandler.resolveEntity() переопределяется для вызова этого, этот метод иногда может быть вызван с null name и baseURI и с systemId, уже приведенным к абсолютному виду.

Задано в:
resolveEntity в интерфейсе EntityResolver2
Параметры:
name - Идентифицирует разрешаемую внешнюю сущность. Либо "[dtd]" для внешней подсхемы, либо имя, начинающееся с "%" для указания параметрической сущности, либо имя общей сущности. Это никогда не равно null, когда вызывается SAX2-парсером.
publicId - Публичный идентификатор разрешаемой внешней сущности (нормализованный в соответствии с требованиями спецификации XML), или null, если не был предоставлен.
baseURI - URI, относительно которого интерпретируются относительные systemID. Это всегда абсолютный URI, за исключением случая, когда он равен null (вероятно, потому что XMLReader получил InputSource без него). Этот URI определен спецификацией XML как связанный с "<" в начале соответствующего объявления.
systemId - Система идентификатора разрешаемой внешней сущности; либо относительный, либо абсолютный URI. Это никогда не равно null, когда вызывается SAX2-парсером; такие парсеры разрешают только объявленные сущности и любую внешнюю подсхему.
Возвращает:
Объект InputSource, описывающий новый источник ввода, который должен быть использован парсером. Возврат null направляет парсер к разрешению system ID относительно base URI и открытию соединения с полученным URI.
Исключения:
SAXException - Любое исключение SAX, возможно, обертывающее другое исключение.
IOException - Вероятно, указывает на неудачу создания нового потока ввода или читателя или некорректный URL.

resolveEntity

public InputSource resolveEntity(String publicId,
                                 String systemId)
                          throws SAXException,
                                 IOException

Вызывает EntityResolver2.resolveEntity() с null именами сущности и базовым URI. Вам нужно переопределить только этот метод, чтобы использовать этот класс.

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

© 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/ext/DefaultHandler2.html

Spec-Zone .ru
спецификации, руководства, описания, API