E4X в Apache NiFi

Apache NiFi имеет процессор ExecuteScript с ECMAScript в качестве одного из возможных обработчиков сценариев. Но даже с Rhino JAR в папке NiFi /lib я все еще не могу создать объект XML, как предполагает любой пример E4X. (PS. DOM и т. д. не являются вариантами.)

Начнем с того, что org.mozilla.javascript.xmlimpl.XML не является общедоступным классом, но даже в этом случае кажется, что он вызывается как org.mozilla.javascript.xmlimpl.XML.jsConstructor(). под капотом.

Есть идеи, как добавить поддержку E4X в ECMAScript NiFi?


person Shamil    schedule 12.11.2019    source источник


Ответы (1)


Я не уверен, что это возможно. Даже идея добавления поддержки непосредственно в Nashorn не получила отзывов о OpenJDK .

person mattyb    schedule 12.11.2019
comment
Это звучит как необходимость создать собственный ExcecuteScript на основе движка Rhino JS. Еще одна функция, которую было бы полезно иметь, — это группы и глобальные переменные, которые могут быть заполнены (например, группа) для запуска кэширования содержимого файлов схемы XML, XSLT и schematron. - person Shamil; 13.11.2019
comment
Альтернативой является использование Groovy вместо JS, первый имеет хорошую встроенную поддержку XML. - person mattyb; 15.11.2019
comment
Разбор XML с помощью Groovy — это хорошо, но MarkupBuilder годится только для чего-то очень простого. - person Shamil; 19.11.2019