Более ранние версии BridgeLink допускали доступ к Java внутри JavaScript (например, Java.type, Java.extend, LSResourceResolver и т. д.), но в версии 4.6.0 вся интеграция Java в преобразователи была отключена.
По этой причине мой предыдущий подход больше не работает.
Что я пробовал
- Сохранил все файлы XSD (CDA.xsd, POCD_MT000040.xsd, datatypes.xsd и т. д.) в диспетчере поиска
- Загрузил содержимое XSD через LookupHelper.get()
- Попытка создать несколько объектов StreamSource и установить systemId
- Попытка использовать LSResourceResolver для разрешения импортированных XSD
Код: Выделить всё
var xsdText = LookupHelper.get("SchemaFiles", "CDA.xsd", ttl);
var reader = new java.io.StringReader(xsdText);
var src = new javax.xml.transform.stream.StreamSource(reader);
src.setSystemId("CDA.xsd");
- "Java не определена"
- "JavaPackage javax... не является функцией"
Моя проблема
Я хочу проверить XML с помощью XSD, хранящихся в диспетчере поиска, включая все зависимые импортированные XSD, без загрузки файлов из файловой системы.
Но:
- Нет доступных классов Java
- Нет LSResourceResolver
- Нет возможности загружать несколько источников StreamSource
- Шаг «Проверка XML» не существует в BridgeLink 4.6
- Возможно ли в BridgeLink 4.6.0 проверять XML на соответствие XSD (с импортом/включением) непосредственно в преобразователе?
- Существует ли какой-либо поддерживаемый способ разрешения зависимых XSD, хранящихся в диспетчере поиска?
- Бриджлинк официально удалил доступ к Java в версии 4.6, сделав невозможным проверку XSD на основе Java внутри преобразователей JS?
- Какова рекомендуемая альтернатива обходной путь?
- Внешний API проверки XML?
- Пользовательский плагин Java?
- Объединить файл XSD?
Я хочу исключить загрузку XSD на основе файловой системы и проверять с помощью схем, хранящихся внутри BridgeLink.
Любое официальное руководство или рабочий пример для BridgeLink 4.6 было бы полезно.
Подробнее здесь: https://stackoverflow.com/questions/798 ... orts-using
Мобильная версия