Как ссылаться на XML-документ в XSLT в OSB 11g

Как я могу сослаться на XML-документ в XSLT в OSB. У меня есть XML-документ в моей папке ресурсов, теперь я хотел бы сослаться на него в одном из моих XSLT и, основываясь на некоторой логике, я бы взял значения из этого документа XMl и передал их в другой XSLT.


person ZSOA_Contractor    schedule 06.10.2016    source источник
comment
Я даже не уверен, что ты сможешь это сделать. XSLT описывает способ преобразования XML-документа. Зачем вам нужен настоящий XML-файл?   -  person Wesley De Keirsmaeker    schedule 07.10.2016
comment
Мне нужно использовать это для отображения. Например, в моем запросе я получаю целую кучу данных от внешнего интерфейса, теперь для внутреннего интерфейса требуются данные в своем собственном формате, которые мне нужно преобразовать на основе этого XML-документа, который у меня есть.   -  person ZSOA_Contractor    schedule 08.10.2016


Ответы (1)


Самый простой способ — переименовать его в .xq или .xsl и поместите XML как литерал. Затем OSB может выполнить это и присвоить переменной, чтобы вы могли использовать ее позже.

В качестве альтернативы вы можете возиться с классом Java, чтобы сделать это, вот так.

person Trent Bartlem    schedule 07.10.2016
comment
Спасибо, Трент, за ваш ответ, но есть ли способ сделать это, не изменяя его на .xq или используя какой-либо класс java, я просто хочу сослаться на свой XML-документ в XSLT, я попытался использовать функцию document() из XSLT и назначьте его переменной, чтобы, когда мне нужно, я мог использовать переменную и проходить через XML-документ, но он не работает в OSB, или я могу использовать неправильный синтаксис для функции document() для ссылки XML-документ в OSB. - person ZSOA_Contractor; 07.10.2016
comment
Не в 11G. Вероятно, и в 12C тоже нет, но я не проверял. - person Trent Bartlem; 07.10.2016
comment
Как мне это сделать, переименовав его в .xq. Есть ли способ включить .xq в XSLT в OSB? - person ZSOA_Contractor; 28.11.2016
comment
нет, они достаточно разные. Я уверен, что есть способы загрузить отдельный файл с помощью xslt. - person Trent Bartlem; 29.11.2016
comment
Что ж, спасибо, но я искал только тот трюк, с помощью которого я могу включить или сделать ссылку на этот xquery своим XSLT. Между тем, не могли бы вы помочь мне еще с одной вещью, я не могу преобразовать sting в список узлов в OSB, даже когда я использую функцию набора узлов, она выдает ошибку - person ZSOA_Contractor; 29.11.2016
comment
Ошибка при выполнении преобразования XSLT: java.lang.NoSuchMethodException: для функции расширения не удалось найти метод weblogic.apache.xml.dtm.ref.DTMNodeIterator.node-set([ExpressionContext,] ). - person ZSOA_Contractor; 29.11.2016