Java is only a nightmare without a secret ingredient . Some time ago I wrote myself a helper that can analyze pipelineās sig and generate Java classes for all input and output document types, with preset code to read and write into the pipeline (similarly to what stock āGenerate code for implementingā option provides), so that only the data transformation itself needs to be done manually. Itās somewhat crude, and generated class names can get messy for complex structures, but the ability to manipulate data in any ways that Java allows is the reason I prefer it to flowservices for any serious task. And as I said above, this particular task does require some juggling with received data, additional SQL calls not being the bigger of inconveniences.