[ 
https://issues.apache.org/jira/browse/NIFI-5887?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16736583#comment-16736583
 ] 

Koji Kawamura commented on NIFI-5887:
-------------------------------------

[~mehrdad22] There are few things better to be discussed separately on this 
JIRA:

1. Referring FlowFile attribute via EL within JOLT spec whose value is a JSON

I was able to do that without error. Since the attribute value is a JSON object 
string representation, you don't have to wrap the EL part with double quote. By 
removing the double quote, JoltTransformJSON works fine. The result FlowFile 
content is what you expected. Please check the attached template for detail.

2. JOLTTransformJSON advanced window JSON format validation doesn't allow EL 
without double quote

Current validation doesn't allow:
{code}
"interest": ${test}
{code}
It has to be double quoted in order to pass the JSON format validation:
{code}
"interest": "${test}"
{code}
But if we wrap the EL with double quote, we can't refer JSON formatted string 
value.

3. JoltTransformJSON advance window doesn't accept "F"
There is already a JIRA for this. NIFI-5238

Based on above, I'm going to change this JIRA title to only focus on addressing 
the 2nd point of above list.

> unable to unmarshal json to an object
> -------------------------------------
>
>                 Key: NIFI-5887
>                 URL: https://issues.apache.org/jira/browse/NIFI-5887
>             Project: Apache NiFi
>          Issue Type: Bug
>    Affects Versions: 1.7.0
>            Reporter: meh
>            Priority: Major
>              Labels: attribute, jolt, json
>         Attachments: NIFI-5887_JOLT_with_JSON_attribute_value.xml
>
>
> i have a attribute (that produced by a REST service and catched by invokeHTTP 
> processor) in JSON format like this:
> {code:java}
> test => {"key":"value"}{code}
> and then i want to put it in flows JSON content using JOLT processor, my 
> content is something like this:
> {code:java}
> { "id": 123, "user": "foo" }{code}
> and my JOLT specification is this:
> {code:java}
> [{ "operation": "default", "spec": { "interest": "${test}" } }]{code}
> the problem is here that, in JOLT advanced window with test attribute nifi 
> cannot put json object and shown this error:
> {quote}*"Error occurred during transformation"*
> {quote}
> and when run processor this detailed error is become alerted:
> {quote}*"unable to unmarshal json to an object"*
> {quote}
> ----
> my desired result is this:
> {code:java}
> { "id": 123, "user": "foo", "interest": {"key":"value"} }{code}
> is this a bug or am i wrong?



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to