[ 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)