ни одна функция не сопоставлена ​​с именем action:output , действие оболочки oozie

Согласно документации oozie, вы можете записывать выходные данные действие оболочки, использующее функцию String action:output(String node, String key), но когда я использую его в своем узле принятия решений, таком как <decision name="mydecision"> <switch> <case to="shell1"> ${action:output('decideScript','decide.next.step.name') = 'shell1'} </case> <default to="end"/> </switch> </decision>

Узи выдает мне сообщение об ошибке no function is mapped to the name "action:output" , oozie shell action


person SandeepKumar    schedule 21.09.2015    source источник


Ответы (1)


Кажется, это ошибка в документации oozie по действию оболочки. Вместо этого используйте {wf:actionData('decideScript')['decide.next.step.name'] = 'shell1} в качестве EL.

person SandeepKumar    schedule 21.09.2015
comment
Не могли бы вы объяснить, что такое decideScript, decide.next.step.name и shell1? - person 54l3d; 09.02.2016
comment
'decideScript' будет именем узла/действия, которое выводит данные (не показано в приведенном выше коде). «decide.next.step.name» — это имя свойства, выводимого узлом решенияScript, а «shell1» — то, с чем оно сравнивается. Хотя я думаю, что приведенное выше должно быть == или eq, а не =. Вот Руководство. - person Breandán; 15.04.2016
comment
Это сработало как по волшебству. Документация oozie вводит в заблуждение. Спасибо за этот ответ. - person ofekp; 14.01.2019