To solve another problem, I switched from using Jersey to EclipseLink MOXy to generate JSON from the JAXB-generated object model (created by Sun JAXB 2.1.12). One difference I noticed is formatting the output
what jersey brings
{"artist-list":{"offset":0,"count":1,"artist":[{"score":"100","type":"Group","id":"4302e264-1cf0-4d1f-aca7-2a6f89e34b36","name":"Farming Incident","sort-name":"Incident, Farming","gender":"male","country":"AF","disambiguation":"the real one","ipi-list":{"ipi":["1001","1002"]},"life-span":{"begin":"1999-04","ended":"true"},"tag-list":{"tag":[{"count":5,"name":"thrash"},{"count":11,"name":"gรผth"}]}}]}}
but moxy gives
"count" : "1",
"offset" : "0",
"artist" : [ {
"id" : "4302e264-1cf0-4d1f-aca7-2a6f89e34b36",
"type" : "Group",
"score" : "100",
"name" : "Farming Incident",
"sort-name" : "Incident, Farming",
"gender" : "male",
"country" : "AF",
"disambiguation" : "the real one",
"ipis" : [ "1001", "1002" ],
"life-span" : {
"begin" : "1999-04",
"ended" : "true"
},
"tags" : [ {
"count" : "5",
"name" : "thrash"
}, {
"count" : "11",
"name" : "gรผth"
} ]
} ]
}
Moxi is much prettier :) But one of the reasons for switching to providing our data through Json is to reduce the transmission bandwidth, so that you can get MOXy to generate the entire one line and without extra spaces around each :?