Spec-Zone.ru › OpenJDK 25

Интерфейс LSResourceResolver

Все известные подинтерфейсы:
CatalogResolver
public interface LSResourceResolver
LSResourceResolver предоставляет приложениям возможность перенаправлять ссылки на внешние ресурсы.

Приложения, которым требуется реализовать собственную обработку внешних ресурсов, могут реализовать этот интерфейс и зарегистрировать свою реализацию, задав параметр "resource-resolver" для объектов DOMConfiguration, связанных с LSParser и LSSerializer. Его также можно зарегистрировать для объектов DOMConfiguration, связанных с Document, если поддерживается функция "LS".

Затем LSParser позволит приложению перехватывать любые внешние сущности, включая внешнее подмножество DTD и внешние параметрические сущности, до их включения. Сущность документа верхнего уровня никогда не передаётся методу resolveResource.

Многим приложениям DOM не потребуется реализовывать этот интерфейс, однако он будет особенно полезен приложениям, создающим XML-документы на основе баз данных или других специализированных источников ввода, а также приложениям, использующим URN.

Примечание: LSResourceResolver основан на интерфейсе EntityResolver SAX2 [SAX].

См. также Спецификацию объектной модели документа (DOM) уровня 3: загрузка и сохранение.

Начиная с версии:
1.5

Краткое описание методов

Модификатор и тип Метод Описание
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-соединения с ресурсом.

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и примеры рабочего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её дочерних компаний в США и других странах.
Авторские права © 1993, 2025, Oracle и/или её дочерние компании, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, 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/25/docs/api/java.xml/org/w3c/dom/ls/LSResourceResolver.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API