Интерфейс LSResourceResolver
public interface LSResourceResolver
LSResourceResolver предоставляет способ для приложений перенаправлять ссылки на внешние ресурсы.
Приложениям, которым требуется реализовать пользовательскую обработку внешних ресурсов, необходимо реализовать этот интерфейс и зарегистрировать свою реализацию, установив параметр "resource-resolver" объектов DOMConfiguration, прикрепленных к LSParser и LSSerializer. Его также можно зарегистрировать в объектах DOMConfiguration, прикрепленных к Document, если поддерживается функция "LS".
Затем LSParser позволит приложению перехватить любые внешние сущности, включая внешний подмножество DTD и внешние параметрические сущности, перед их включением. Верхнеуровневая сущность документа никогда не передается методу resolveResource.
Многим приложениям DOM не потребуется реализовывать этот интерфейс, но он будет особенно полезен для приложений, которые строят XML-документы из баз данных или других специализированных источников ввода, или для приложений, использующих URN.
Примечание: LSResourceResolver основан на интерфейсе SAX2 [SAX] EntityResolver.
См. также Спецификацию загрузки и сохранения уровня 3 Объектной модели документа (DOM).
Методы
| Модификатор и тип | Метод и описание |
|---|---|
LSInput |
resolveResource(String type,
String namespaceURI,
String publicId,
String systemId,
String baseURI) Разрешить приложению разрешать внешние ресурсы. |
Методы
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, 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.