xs: функция даты не определена в xslt2.0 - PullRequest
1 голос
/ 06 января 2020

У меня сейчас проблема с преобразованием xslt в процессе bpel. В моем файле xslt я использовал функцию xs: date для преобразования строки в формат даты. Однако при запуске обработанного bpel выдается следующая ошибка:

"Не удалось выполнить выражение XPath; причина была в следующем: javax. xml .transform.TransformerConfigurationException: oracle. xml. xpath.XPathException: функция даты в пространстве имен http://www.w3.org/2001/XMLSchema не определена. Проверьте подробную причину root, описанную в тексте сообщения об исключении, и убедитесь, что запрос XPath правильный. ".

Подробнее:

Я использовал таблицу стилей версии 2.0

Я уже объявил пространство имен xs.

Я также пытался использовать xs: dateTime ...

Кто-нибудь знает в чем проблема?

Большое вам спасибо.

1 Ответ

1 голос
/ 07 января 2020

Вам необходимо использовать процессор XSLT, который поддерживает XSLT 2.0. Указание version="2.0" в таблице стилей не поможет, если ваш процессор XSLT распознает только версию = "1.0". Хотя 2.0 вышла в 2007 году, существует множество процессоров (таких как процессоры по умолчанию в Java,. NET и в браузерах), которые до сих пор не обновлены.

Исключение oracle.xml.xpath.XPathException предполагает, что вы, вероятно, используете процессор XSLT в Oracle XDK. Это имеет несколько своеобразный статус, IIR C, поскольку он был частично обновлен до XSLT 2.0, но (из-за приобретения Oracle Sun) обновление так и не было завершено, поэтому он поддерживает некоторые функции XSLT 2.0, но не все .

...