@Produces JSON différent de EE 6 à EE 7
Bonjour,
J'ai récemment passé de java EE 6 à java EE 7 et de Glassfish 3 à Glassfish 4 (non sans difficulté :D mais c'est bon !)
Mais il me reste un souci - non des moindres car je ne veux pas refaire mon code, il ne me produit plus la même chose quand j'appel ce webservice :
Code:
1 2 3 4 5
| @GET
@Produces({"application/json", "application/xml"})
public List<Pays> findAll() {
return pays.getAllPays();
} |
Mon serveur Glassfish 3 me donne ca :
Code:
{"pays":[{"exempleNPA":"9999","exempleTelephone":"+41 99 999 99 99","IDPays":"1","internationalPays":"CH","nomPays":"Suisse","regexNPA":"^[1-9][0-9]{3}$","regexTelephone":"^\\+41[ ][0-9]{2}[ ][0-9]{3}[ ][0-9]{2}[ ][0-9]{2}$"},{"exempleNPA":"xxxxx","exempleTelephone":"+33 9 99 99 99 99","IDPays":"2","internationalPays":"FR","nomPays":"France","regexNPA":"^(F-)?((2[A|B])|[0-9]{2})[0-9]{3}$","regexTelephone":"^\\+33[ ][1-6]{1}(([ ][0-9]{2}){4})$"},{"exempleNPA":"9999","exempleTelephone":"9999-9999999","IDPays":"3","internationalPays":"AT","nomPays":"Autriche","regexNPA":"^[0-9]{4,4}$","regexTelephone":"^[+0-9 ]+$"},{"exempleNPA":"a1a 1a1","exempleTelephone":"(999) 999-9999","IDPays":"4","internationalPays":"CA","nomPays":"Canada","regexNPA":"^[A-Z]{1}[0-9]{1}[A-Z]{1}[ ][0-9]{1}[A-Z]{1}[0-9]{1}$","regexTelephone":"^[(][0-9]{3}[)][ ][0-9]{3}[-][0-9]{4}$"}]}
Et mon serveur Glassfish 4 me donne ca :
Code:
[{"IDPays":1,"exempleNPA":"9999","exempleTelephone":"+41 99 999 99 99","internationalPays":"CH","nomPays":"Suisse","regexNPA":"^[1-9][0-9]{3}$","regexTelephone":"^\\+41[ ][0-9]{2}[ ][0-9]{3}[ ][0-9]{2}[ ][0-9]{2}$"},{"IDPays":2,"exempleNPA":"xxxxx","exempleTelephone":"+33 9 99 99 99 99","internationalPays":"FR","nomPays":"France","regexNPA":"^(F-)?((2[A|B])|[0-9]{2})[0-9]{3}$","regexTelephone":"^\\+33[ ][1-6]{1}(([ ][0-9]{2}){4})$"},{"IDPays":3,"exempleNPA":"9999","exempleTelephone":"9999-9999999","internationalPays":"AT","nomPays":"Autriche","regexNPA":"^[0-9]{4,4}$","regexTelephone":"^[+0-9 ]+$"},{"IDPays":4,"exempleNPA":"a1a 1a1","exempleTelephone":"(999) 999-9999","internationalPays":"CA","nomPays":"Canada","regexNPA":"^[A-Z]{1}[0-9]{1}[A-Z]{1}[ ][0-9]{1}[A-Z]{1}[0-9]{1}$","regexTelephone":"^[(][0-9]{3}[)][ ][0-9]{3}[-][0-9]{4}$"}]
La différence se situe surtout dans le faite que dans mon nouveau serveur, la clé de mon tableau n'est plus le nom de ma classe ! Ce qui me perturbe énormément dans mon code comme vous pouvez vous en doutez :D ... Et le faite que c'était trié par ordre alphabétique, j'aimais bien aussi....
Comment remettre ma classe comme clé de la valeur ?
Merci énormément de votre aide