Использование reassured parse json Response

У меня есть ответ JSON, как показано ниже.

[{

    views: [{
            name: "Preview",
            displayOrder: 1,
            groups: [{
                    type: "static",
                    displayOrder: 1,
                    tiles: [{
                            context: "event",
                            collection: "event"

                        }
                    ]
                }
            ]
        }, {
            name: "Team Stats",
            displayOrder: 2,
            groups: [{
                    type: "static",
                    displayOrder: 1,
                    tiles: [{
                            context: "event",
                            collection: "event"
                        }
                    ]
                }
            ]
        }, {
            name: "Leaders",
            displayOrder: 3,
            groups: [{
                    type: "static",
                    displayOrder: 1,
                    tiles: [{
                            context: "event",
                            collection: "event"

                        }
                    ]
                }
            ]
        }, {
            name: "SA Roster",
            displayOrder: 4,
            groups: [{
                    type: "scrollable",
                    displayOrder: 1,
                    auditType: "player-pregame_roster",
                    tiles: [{
                            context: "event",
                            collection: "people",
                            auditType: "sekloger",
                            order: 3,
                            firstName: "LaMarcus"

                        }, {
                            context: "event",
                            collection: "people",
                            auditType: "france24",
                            order: 7,
                            firstName: "Kawhi"

                        }
                    ]
                }
            ]
        }, {
            name: "LAL Roster",
            displayOrder: 5,
            groups: [{
                    type: "scrollable",
                    displayOrder: 1,
                    auditType: "player-pregame_roster",
                    tiles: [{
                            context: "event",
                            collection: "people",
                            auditType: "player-pregame_roster"

                        }, {
                            context: "event",
                            collection: "people",
                            auditType: "player-pregame_roster",
                            order: 11

                        }, {
                            context: "event",
                            collection: "people",
                            auditType: "player-pregame_roster",
                            order: 16

                        }
                    ]
                }
            ]
        }
    ]

Я использую будьте уверены JspnPath (jayway.restassured.path.json.JsonPath;) чтобы получить конкретный дочерний элемент из ответа.

Из приведенного ниже ответа я пытаюсь получить весь массив плиток внутри группового массива. Используя приведенный ниже код, я попытался получить весь групповой массив.jsonAsArrayList печатает правильные данные. т.е. все групповые массивы.

  ArrayList<Map<String,Object>> jsonAsArrayList = response.jsonPath().getJsonObject("views[0].groups"); 

       System.out.println(jsonAsArrayList.size()); // 

       for (Map<String, Object> map : jsonAsArrayList) {
           for (Map.Entry<String, Object> entry : map.entrySet()) {
               String key = entry.getKey();
               Object value = entry.getValue();
           }
       }

Но пока я пытаюсь повторить jsonAsArrayList я получаю

 java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.util.Map

Что не так с моим кодом?

0 ответов

Другие вопросы по тегам