Member since
07-08-2020
5
Posts
0
Kudos Received
1
Solution
My Accepted Solutions
Title | Views | Posted |
---|---|---|
691 | 10-25-2023 01:57 AM |
10-25-2023
01:57 AM
This indeed solved the problem. Thanks a lot for your support.
... View more
06-09-2021
06:18 PM
Thanks for this excellent post, it works almost perfect in 1.13.0 version. The only problem I had was when did the last step (13) and the ConvertRecord processor became invalid with the following message: I found the solution to this issue in this post of @pvillard where he updates the schema.name property before de ConvertRecord processor. I didn't complete understand the reason but it works.
... View more
02-04-2021
12:04 AM
In order to convert JSON to XML, you can use ConvertRecord processor available as part of the NiFi tool (I worked on version: 1.11.4).
Following are the steps to configure ConvertRecord processor to convert JSON input to XML output:
Add a processor – ConvertRecord and right-click to “configure”
Click the Record Reader value and select Create New Service.
Select JSONTreeReader and click CREATE.
Similarly, click on the Record Writer value and select Create New Service.
Select XMLRecordSetWriter and click CREATE.
Final configuration of ConvertRecord should look like this:
Click à to configure JSONTreeReader to configure details about the schema that should be read by the registry. The controller service form should open:
Click configure of JSONTreeReader to start configuring the JSON Reader and configure as per the following screenshot:
When you select Create New Service in the above screenshot, another form opens up. Fill it up based on the following screenshot and click CREATE:
Fill in the rest of the information as follows:
Click à arrow next to AvroSchemaRegistry and now the controller service page would look like this:
Click configure against AvroSchemaRegistry and configure the registry. Add a new property with any schema name (for example: my_schema) and property value should be an AVRO schema that your JSON reader should read. In this case, you can take JSON message and using any online tool, create an AVRO schema and paste it here. You can create AVRO schema using an online tool (I used this one: AVRO schema generator)
Apply and enable the AvroSchemaRegistry and JSONTreeReader from the controller service.
Click configure on XMLRecordSetWriter in controller service and configure as follows:
Finally, ensure setting a new property to let the ConvertRecord know the schema name as follows in UpdateAttribute processor before sending the JSON message to ConvertRecord:
... View more
Labels: