IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

Problème avec JSON


Sujet :

avec Java

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 57
    Points : 42
    Points
    42
    Par défaut Problème avec JSON
    Bonjour,

    je rencontre actuellement un problème avec l'utilisation de JSON.
    Je dois afficher un Objet A dans un flux JSON.

    ObjetA{
    List<ObjetB>
    }
    ObjetB{
    List<ObjetC>
    }

    Le problème est que lorsque l'objet B est bien considéré comme une liste dans mon flux JSON (c'est à dire entre []), l'objetA n'est plus considérer comme une liste. Et inversement, lorsque l'objetB n'est pas considéré comme une liste, l'objetA est bien considéré comme une liste.

    Quelqu'un aurait une idée du pourquoi? et du comment résoudre?

    Merci d'avance.

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Pas compris. Un ObjetA n'est pas une liste, c'est un ObjetA. Une liste n'est pas un ObjectA, c'est une liste. Pareil pour tout le reste.

    C'est quoi ce méli-mélo ? Montre des trucs concrets.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 57
    Points : 42
    Points
    42
    Par défaut
    Dans ce premier cas, j'ai une liste de ObjetB (listeObjetB) qui contient une liste de ObjetC (listeObjetC). Cependant, listeObjetB n'est pas considérée comme une liste car on ne voit pas les [] et listeObjetC est bien considéré comme une liste.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     "objetA":{
                "listeObjetB":{
                    "objetB":{
                        "nomB":"bbb",
                        "listeObjetC":{
                            "objetC":[
                                {
                                    "nomC":"ccc",
                                    "id":"13"
                                }
                            ]
                        }
                    }
                },
                "objetB":{
                    "nomB":"bbbb",
                    "listeObjetC":{
                        "objetC":[
                            {
                                "nomC":"cccc",
                                "id":"13"
                            }
                        ]
                    }
                }
            }
    Dans ce deuxième cas, j'ai une liste de ObjetB (listeObjetB) qui contient une liste de ObjetC (listeObjetC). Cependant, listeObjetB est considérée comme une liste car on voit les [] et listeObjetC n'est pas considéré comme une liste.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    "objetA":{
                "listeObjetB":{
                    "objetB":[
                        {
                            "nomB":"bbb",
                            "listeObjetC":{
                                "objetC":{
                                    "nomC":"ccc",
                                    "id":"13"
                                }
                            }
                        },
                        {
                            "nomB":"bbbb",
                            "listeObjetC":{
                                "objetC":{
                                    "nomC":"cccc",
                                    "id":"13"
                                }
                            }
                        }
                    ]
                }
            }
    est-ce plus clair?

  4. #4
    Membre actif
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    333
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 333
    Points : 295
    Points
    295
    Par défaut
    Si j'ai bien saisi ta structure tu dois obtenir quelque chose de la forme suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    {"nom":"A1","listeObjetB":[{"nom":"B1","listeObjetC":[{"nom":"C1"},{"nom":"C2"},{"nom":"C3"}]},{"nom":"B2","listeObjetC":[]}]}
    Je ne sais pas comment tu le code ? à la main
    Par contre tu peux essayer avec la lib gson, elle fonctionne nickel

    http://code.google.com/p/google-gson/

    Bon courage

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 57
    Points : 42
    Points
    42
    Par défaut
    Citation Envoyé par LittleBean Voir le message
    Si j'ai bien saisi ta structure tu dois obtenir quelque chose de la forme suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    {"nom":"A1","listeObjetB":[{"nom":"B1","listeObjetC":[{"nom":"C1"},{"nom":"C2"},{"nom":"C3"}]},{"nom":"B2","listeObjetC":[]}]}
    Je ne sais pas comment tu le code ? à la main
    Par contre tu peux essayer avec la lib gson, elle fonctionne nickel

    http://code.google.com/p/google-gson/

    Bon courage
    Oui c'est sa que je veux obtenir! et selon si le second est une liste le premier n'est donc plus considéré comme une liste!

    Le problème est que dans mon projet tout est déjà implémenter, je n'ai fais que ajouter un service pour renvoyer ses données.
    Mais c'était déjà fait pour un autre service ou un flux JSON contenant une liste d'objet qui lui même contenait une liste d'objet et cela fonctionne bien. j'ai donc repris la même structure mais rien n'y fait j'ai soit l'un soit l'autre. Et donc je ne peux pas utilisé la lib que tu me dis car il faut que je continu de la même manière!!

  6. #6
    Membre actif
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    333
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 333
    Points : 295
    Points
    295
    Par défaut
    Je pense qu'il est préférable d'utiliser une librairie.

    Mais si tu tiens à le faire à la mano, il faut que tu nous poste ton code.

    Oui c'est sa que je veux obtenir! et selon si le second est une liste le premier n'est donc plus considéré comme une liste!
    Pas compris ... une liste reste une liste!

Discussions similaires

  1. Problème avec json.getString() dans une boucle
    Par Manu0086 dans le forum Android
    Réponses: 2
    Dernier message: 14/06/2013, 17h34
  2. Problème avec JSON et Web Service
    Par chady dans le forum Services Web
    Réponses: 0
    Dernier message: 09/03/2012, 00h34
  3. Problème avec JSON
    Par Xenonmax dans le forum Android
    Réponses: 5
    Dernier message: 19/12/2011, 10h05
  4. [Autocomplete et Json store] problème avec Autocomplete
    Par leo_OrNg dans le forum Ext JS / Sencha
    Réponses: 1
    Dernier message: 11/04/2011, 14h23
  5. Problème avec JSON
    Par oprami dans le forum GWT et Vaadin
    Réponses: 5
    Dernier message: 05/10/2008, 22h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo