Интерфейс LSResourceResolver
- Все известные подинтерфейсы:
CatalogResolver
public interface LSResourceResolver
LSResourceResolver предоставляет способ перенаправления ссылок на внешние ресурсы для приложений. Приложениям, которым требуется реализовать пользовательскую обработку внешних ресурсов, необходимо реализовать этот интерфейс и зарегистрировать свою реализацию, установив параметр "resource-resolver" объектов DOMConfiguration прикреплённых к объектам LSParser и LSSerializer. Он также может быть зарегистрирован в объектах DOMConfiguration прикреплённых к объектам Document если поддерживается функция "LS".
LSParser позволит приложению перехватить любые внешние сущности, включая внешний набор DTD и внешние сущности параметров, перед их включением. Сущность верхнего уровня документа никогда не передаётся методу resolveResource.
Многие приложения DOM не нуждаются в реализации этого интерфейса, но он будет особенно полезен для приложений, создающих XML-документы из баз данных или других специализированных источников ввода, или для приложений, использующих URN.
Примечание: LSResourceResolver основан на интерфейсе SAX2 [SAX] EntityResolver.
См. также Спецификацию DOM уровня 3 Load and Save.
- С:
- 1.5
Краткое описание методов
Подробное описание методов
resolveResource
LSInput resolveResource(String type, String namespaceURI, String publicId, String systemId, String baseURI)
LSParser вызовет этот метод перед открытием любого внешнего ресурса, включая внешний набор DTD, внешние сущности, на которые ссылается DTD, и внешние сущности, на которые ссылается элемент документа (однако сущность верхнего уровня документа не передается в этот метод). Приложение может запросить, чтобы LSParser разрешил сам внешний ресурс, использовал альтернативный URI или другой источник ввода. Разработчики приложений могут использовать этот метод для перенаправления идентификаторов внешней системы на безопасные и/или локальные URI, для поиска общедоступных идентификаторов в каталоге или для чтения сущности из базы данных или другого источника ввода (включая, например, диалоговое окно).
- Параметры:
-
type- Тип разрешаемого ресурса. Для XML [XML 1.0] ресурсов (т.е. сущностей), приложения должны использовать значение"http://www.w3.org/TR/REC-xml". Для XML Schema [XML Schema Part 1] приложения должны использовать значение"http://www.w3.org/2001/XMLSchema". Другие типы ресурсов не охватываются этой спецификацией и поэтому должны рекомендовать абсолютный URI для использования этого метода. -
namespaceURI- Пространство имен разрешаемого ресурса, например, целевое пространство имен XML Schema [XML Schema Part 1] при разрешении ресурсов XML Schema. -
publicId- Публичный идентификатор внешней сущности, на которую имеется ссылка, илиnullесли публичный идентификатор не был указан или если ресурс не является сущностью. -
systemId- Системный идентификатор, ссылка URI [IETF RFC 2396], внешнего ресурса, на который имеется ссылка, илиnullесли системный идентификатор не был указан. -
baseURI- Абсолютный базовый URI ресурса, который анализируется, илиnullесли базового URI нет. - Возвращает:
- Объект
LSInput, описывающий новый источник ввода, илиnullдля запроса открытия обычного URI-соединения к ресурсу.
© 1993, 2023, 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/21/docs/api/java.xml/org/w3c/dom/ls/LSResourceResolver.html