[ https://issues.apache.org/jira/browse/NIFI-11627?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17771313#comment-17771313 ]
Chuck Tilly commented on NIFI-11627: ------------------------------------ Hi [~markap14] {quote}Making use of a Controller Service would work well. We could have a Controller Service that allows user-added properties where the values are JSON Schemas, and then allow ValidateJson to be configured with a Controller Service and take in the name of the schema, which would allow for Expression Language to be used. So I believe that would give you exactly what you're looking for, [~nwchuckster], no? {quote} Absolutely!!! That would be fantastic. Of course that is my preference so I look forward to that. {quote}...you cannot use Expression Language within a Parameter Context because parameters' values are resolved before the processor ever even has access to the property value. So, if you were to enter #\{${schema.name}} what would happen is that NiFi would resolve that to a parameter named ${schema.name} and the processor would be invalid, before it ever had any chance to even evaluate Expression Language. {quote} My experience is that you can use them together with the UpdateAttribute processor where I use this technique in several places. For example I use the following expression in an UpdateAttribute rule to dynamically generate the correct URL string as an attribute for each flowfile. {color:#0747a6}{{${#\{'Toadol End Point Service'}:evaluateELString()}}}{color} {quote}There are security policies that guard who is allow to reference parameters, etc. and allowing dynamic creation of parameter names would violate the security constraints. {quote} I was not aware of this. Is this true even if this process is contained in its own process group with its own parameter context specific to only this context? > Add Dynamic Schema References to ValidateJSON Processor > ------------------------------------------------------- > > Key: NIFI-11627 > URL: https://issues.apache.org/jira/browse/NIFI-11627 > Project: Apache NiFi > Issue Type: Improvement > Components: Extensions > Affects Versions: 1.19.1 > Reporter: Chuck Tilly > Assignee: Daniel Stieglitz > Priority: Major > > For the ValidateJSON processor, add support for flowfile attribute references > that will allow for a JSON schema located in the Parameter Contexts, to be > referenced dynamically based on a flowfile attribute. e.g. > {code:java} > #{${schema.name}} {code} > > The benefits of adding support for attribute references are significant. > Adding this capability will allow a single processor to be used for all JSON > schema validation. Unfortunately, the current version of this processor > requires a dedicated processor for every schema, i.e. 12 schemas requires 12 > ValidateJSON processors. This is very laborious to construct and maintain, > and resource expensive. > ValidateJSON processor (https://issues.apache.org/jira/browse/NIFI-7392) -- This message was sent by Atlassian Jira (v8.20.10#820010)