Как передать сложный объект Java (вложенные карты и списки) от одного процессора nache apache другому? - PullRequest
2 голосов
/ 10 мая 2019

У меня есть две функции, которые должны быть реализованы через пользовательский процессор nifi. Выход первого является входом для второго. Однако этот вывод принимает форму сложного объекта Java (вложенных хэш-карт и списков). Если я хочу реализовать эти две функции как отдельные процессоры, то как я могу передать эти сложные Java-объекты между двумя процессорами. Должен ли я преобразовать их в какую-нибудь промежуточную форму, скажем, json или xml, а затем перейти от одного процессора к другому (а затем во втором процессоре снова преобразовать json / xml обратно во вложенные карты и списки)? Или есть какой-то другой стандартный / очевидный подход, который я полностью пропускаю?

PS: В настоящее время я поместил обе функции в один и тот же процессор, чтобы мне не приходилось передавать выходные данные первой функции другому.

1 Ответ

2 голосов
/ 10 мая 2019

Вы должны иметь возможность сериализовать данные (https://docs.oracle.com/javase/tutorial/jndi/objects/serial.html) и передать их через FlowFile.

...