I am using JMS Serializer. JsonSerializer gives me the wrong array format when it works with Doctrine ArrayCollection types. The results should be consistent with the format [ {}, {} ], but it gives me { 1: {}, 2: {} }.
Additional information about this scenario. This only happens when you try to serialize an object that contains an object containing an ArrayCollection, and ArrayCollection includes an object of the first level. For instance:
{
"description":"Text provided",
"date":"1434145921000",
"oid":1,
"userCreator":{
"username":"name123",
"password":"psw",
"oid":2,
"name":"the-name",
"lastname":"the-lasname",
"announcements":{
"1":{
"description":"More text",
"date":"1434745921000",
"oid":3
},
"2":{
"description":"Reparar ordenador",
"date":"1434145921000",
"oid":5
}
}
}
}
However, this does not happen if I serialize the user object directly:
{
"username":"user1",
"password":"123",
"oid":2,
"name":"Rafael",
"lastname":"Jimenez"
"announcements":[
{
"description":"Cargar cajas a la guardilla",
"date":"1434145921000",
"oid":1
},
{
"description":"Cuidar de anciano moribundo",
"date":"1434745921000",
"oid":3
},
{
"description":"Reparar ordenador",
"date":"1434145921000",
"oid":5
}
]
}
Any clue?