[ 
https://issues.apache.org/jira/browse/JOHNZON-193?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Daniel Cunha updated JOHNZON-193:
---------------------------------
    Description: 
{color:#333333}If you try the follow code:{color}
 
{code:java}
final JsonObjectBuilder jsonObjectBuilder = Json.createObjectBuilder();
final JsonArrayBuilder jsonArrayBuilder = Json.createArrayBuilder();
IntStream.range(1, 10).forEach(numer -> {
    jsonObjectBuilder.add("key", String.format("Key %d", numer)); 
    jsonObjectBuilder.add("value", String.format("Value %d", numer)); 
    jsonArrayBuilder.add(jsonObjectBuilder);
});
final String message = jsonArrayBuilder.build().toString();{code}

{color:#333333}it is retuning:{color}
 
{code:java}
[{"key":"Key 9","value":"Value 9"},{"key":"Key 9","value":"Value 
9"},{"key":"Key 9","value":"Value 9"},{"key":"Key 9","value":"Value 
9"},{"key":"Key 9","value":"Value 9"},{"key":"Key 9","value":"Value 
9"},{"key":"Key 9","value":"Value 9"},{"key":"Key 9","value":"Value 
9"},{"key":"Key 9","value":"Value 9"}]{code}


{color:#333333} But we expect to see:{color}

{code:java}
[{"key":"Key 1","value":"Value 1"},{"key":"Key 2","value":"Value 
2"},{"key":"Key 3","value":"Value 3"},{"key":"Key 4","value":"Value 
4"},{"key":"Key 5","value":"Value 5"},{"key":"Key 6","value":"Value 
6"},{"key":"Key 7","value":"Value 7"},{"key":"Key 8","value":"Value 
8"},{"key":"Key 9","value":"Value 9"}]{code}

  was:
If you try the follow code:
{color:#cc7832}final {color}JsonObjectBuilder jsonObjectBuilder = 
Json.createObjectBuilder(){color:#cc7832};
{color}{color:#cc7832}final {color}JsonArrayBuilder jsonArrayBuilder = 
Json.createArrayBuilder(){color:#cc7832};
{color}IntStream.range({color:#6897bb}1{color}{color:#cc7832}, 
{color}{color:#6897bb}10{color}).forEach(numer -> {
    
{color:#b389c5}jsonObjectBuilder{color}.add({color:#6a8759}"key"{color}{color:#cc7832},
 {color}String.format({color:#6a8759}"Key %d"{color}{color:#cc7832}, 
{color}numer)){color:#cc7832};
{color}    
{color:#b389c5}jsonObjectBuilder{color}.add({color:#6a8759}"value"{color}{color:#cc7832},
 {color}String.format({color:#6a8759}"Value %d"{color}{color:#cc7832}, 
{color}numer)){color:#cc7832};
{color}    
{color:#b389c5}jsonArrayBuilder{color}.add({color:#b389c5}jsonObjectBuilder{color}){color:#cc7832};
{color}}){color:#cc7832};
{color}{color:#cc7832}final {color}String message = 
jsonArrayBuilder.build().toString(){color:#cc7832};
{color}
it is retuning:
[\{"key":"Key 9","value":"Value 9"},\{"key":"Key 9","value":"Value 
9"},\{"key":"Key 9","value":"Value 9"},\{"key":"Key 9","value":"Value 
9"},\{"key":"Key 9","value":"Value 9"},\{"key":"Key 9","value":"Value 
9"},\{"key":"Key 9","value":"Value 9"},\{"key":"Key 9","value":"Value 
9"},\{"key":"Key 9","value":"Value 9"}]
But we expect to see:
[\{"key":"Key 1","value":"Value 1"},\{"key":"Key 2","value":"Value 
2"},\{"key":"Key 3","value":"Value 3"},\{"key":"Key 4","value":"Value 
4"},\{"key":"Key 5","value":"Value 5"},\{"key":"Key 6","value":"Value 
6"},\{"key":"Key 7","value":"Value 7"},\{"key":"Key 8","value":"Value 
8"},\{"key":"Key 9","value":"Value 9"}]


> Johnzon is keeping the reference for map/values from JsonObjectBuilder.
> -----------------------------------------------------------------------
>
>                 Key: JOHNZON-193
>                 URL: https://issues.apache.org/jira/browse/JOHNZON-193
>             Project: Johnzon
>          Issue Type: Bug
>            Reporter: Daniel Cunha
>            Assignee: Reinhard Sandtner
>            Priority: Major
>
> {color:#333333}If you try the follow code:{color}
>  
> {code:java}
> final JsonObjectBuilder jsonObjectBuilder = Json.createObjectBuilder();
> final JsonArrayBuilder jsonArrayBuilder = Json.createArrayBuilder();
> IntStream.range(1, 10).forEach(numer -> {
>     jsonObjectBuilder.add("key", String.format("Key %d", numer)); 
>     jsonObjectBuilder.add("value", String.format("Value %d", numer)); 
>     jsonArrayBuilder.add(jsonObjectBuilder);
> });
> final String message = jsonArrayBuilder.build().toString();{code}
> {color:#333333}it is retuning:{color}
>  
> {code:java}
> [{"key":"Key 9","value":"Value 9"},{"key":"Key 9","value":"Value 
> 9"},{"key":"Key 9","value":"Value 9"},{"key":"Key 9","value":"Value 
> 9"},{"key":"Key 9","value":"Value 9"},{"key":"Key 9","value":"Value 
> 9"},{"key":"Key 9","value":"Value 9"},{"key":"Key 9","value":"Value 
> 9"},{"key":"Key 9","value":"Value 9"}]{code}
> {color:#333333} But we expect to see:{color}
> {code:java}
> [{"key":"Key 1","value":"Value 1"},{"key":"Key 2","value":"Value 
> 2"},{"key":"Key 3","value":"Value 3"},{"key":"Key 4","value":"Value 
> 4"},{"key":"Key 5","value":"Value 5"},{"key":"Key 6","value":"Value 
> 6"},{"key":"Key 7","value":"Value 7"},{"key":"Key 8","value":"Value 
> 8"},{"key":"Key 9","value":"Value 9"}]{code}



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

Reply via email to