powered by simpleCommunicator - 2.0.39     © 2025 Programmizd 02
Форумы / Java [игнор отключен] [закрыт для гостей] / Не читает все данные из JSON
25 сообщений из 42, страница 1 из 2
Не читает все данные из JSON
    #39853984
skyboyy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня написан проект на спринге, в JSON файле есть 7 протоколов, но почему то на сайте показывает всего 4 протокола хотя их 7 в JSON файле. В чем может быть проблема



Код: java
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.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
193.
194.
195.
196.
197.
198.
199.
200.
201.
202.
203.
204.
205.
206.
207.
208.
209.
210.
211.
212.
213.
214.
215.
216.
217.
218.
219.
220.
221.
222.
223.
224.
225.
226.
227.
228.
229.
230.
231.
232.
233.
234.
235.
236.
237.
238.
239.
240.
241.
242.
243.
244.
245.
246.
247.
248.
249.
250.
251.
252.
253.
254.
255.
256.
257.
258.
259.
260.
261.
262.
263.
264.
265.
266.
267.
268.
269.
270.
271.
272.
273.
274.
275.
276.
277.
278.
279.
280.
281.
282.
283.
284.
285.
286.
287.
288.
289.
290.
291.
292.
293.
294.
295.
296.
297.
298.
299.
300.
301.
302.
303.
304.
305.
306.
307.
308.
309.
310.
311.
312.
313.
314.
315.
316.
317.
318.
319.
320.
321.
322.
323.
324.
325.
326.
327.
328.
329.
330.
331.
332.
333.
334.
335.
336.
337.
338.
339.
340.
341.
342.
343.
344.
345.
346.
347.
348.
349.
350.
351.
352.
353.
354.
355.
356.
357.
358.
359.
360.
361.
362.
363.
364.
365.
366.
367.
368.
369.
370.
371.
372.
373.
374.
375.
376.
377.
378.
379.
380.
381.
382.
383.
384.
385.
386.
387.
388.
389.
390.
391.
392.
393.
394.
395.
396.
397.
398.
399.
400.
401.
402.
403.
404.
405.
406.
407.
408.
409.
410.
411.
412.
413.
414.
415.
416.
417.
418.
419.
420.
421.
422.
423.
424.
425.
426.
427.
428.
429.
430.
431.
432.
433.
434.
435.
436.
437.
438.
439.
440.
441.
442.
443.
444.
445.
446.
447.
@Controller
public class LookingGlassController {

    private final static String BGP_URL = "http://80.241.0.85/api/protocols/bgp";
    private final static String BGP_DETAILS_URL = "http://80.241.0.85/api/protocol/";
    private final static String TABLE_URL = "http://80.241.0.85/api/routes/table/";
    private final static String ROUT_URL = "http://80.241.0.85/api/route/";

    /**
     *
     * @param lang
     * @return
     */
    @RequestMapping("/{lang:ru|kk|en}/lookingglass/bgp")
    public ModelAndView bgp(@PathVariable String lang) {

        List<BGPData> bgpDateList = new ArrayList<>();
        try {
            JSONObject json = new JSONObject(IOUtils.toString(new URL(BGP_URL), Charset.forName("UTF-8")));

            JSONObject protocols = json.getJSONObject("protocols");
            Map<String, Object> prots = protocols.toMap();
            for (String prot_name : prots.keySet()) {
                JSONObject prot = protocols.getJSONObject(prot_name);
                String protocol = prot.getString("protocol");
                String neighborAddress = prot.getString("neighbor_address");
                String description = prot.getString("description");
                Integer asn = prot.getInt("neighbor_as");
                String tableName = prot.getString("table");
                String status = prot.getString("bgp_state");
                Integer routeImport = prot.getJSONObject("routes").getInt("imported");
                Integer routeExport = prot.getJSONObject("routes").getInt("exported");
                Integer importLimit = prot.getInt("import_limit");

                String tableLink = "/" + lang + "/lookingglass/table/" + tableName;

                String protocolDetailLink = "/" + lang + "/lookingglass/bgpdetails/" + protocol;

                BGPData bgpData = new BGPData();
                bgpData.setProtocol(protocol);
                bgpData.setProtocolDetailLink(protocolDetailLink);
                bgpData.setNaighbord(neighborAddress);
                bgpData.setDescription(description);
                bgpData.setAsn(asn);
                bgpData.setTableName(tableName);
                bgpData.setStatus(status);
                bgpData.setRouteImport(routeImport);
                bgpData.setRouteExport(routeExport);
                bgpData.setImportLimit(importLimit);
                bgpData.setTableLink(tableLink);
                bgpDateList.add(bgpData);
            }

        } catch (IOException | JSONException ex) {
        }

        Map<String, Object> outMap = new HashMap();
        outMap.put("lang", lang);
        outMap.put("bgpDataList", bgpDateList);
        outMap.put("lgSearchData", new LgSearchData());

        return new ModelAndView("/site/lookingglass/bgp", outMap);
    }


    /**
     *
     * @param lang
     * @param protocol
     * @return
     */
    @RequestMapping("/{lang:ru|kk|en}/lookingglass/bgpdetails/{protocol}")
    public ModelAndView bgp_details(@PathVariable String lang, @PathVariable String protocol) {

        BGPDetailData bgpDetalisData = new BGPDetailData();

        try {
            JSONObject json = new JSONObject(IOUtils.toString(new URL(BGP_DETAILS_URL + protocol), Charset.forName("UTF-8")));

            JSONObject protocolJs = json.getJSONObject("protocol");

            String bird_protocol = protocolJs.getString("bird_protocol");
            String state = protocolJs.getString("state");
            String state_changed = protocolJs.getString("state_changed");
            String connection = protocolJs.getString("connection");

            String description = protocolJs.getString("description");
            Integer preference = protocolJs.getInt("preference");
            String input_filter = protocolJs.getString("input_filter");
            String output_filter = protocolJs.getString("output_filter");
            Integer import_limit = protocolJs.getInt("import_limit");
            String limit_action = protocolJs.getString("limit_action");

            Integer routes_imported = protocolJs.getJSONObject("routes").getInt("imported");
            Integer routes_exported = protocolJs.getJSONObject("routes").getInt("exported");
            Integer routes_preferred = protocolJs.getJSONObject("routes").getInt("preferred");

            JSONObject jsO = protocolJs.getJSONObject("route_changes").getJSONObject("import_updates");
            String route_change_import_updates = getRouteChange(jsO);
            jsO = protocolJs.getJSONObject("route_changes").getJSONObject("import_withdraws");
            String route_change_import_withdraws = getRouteChange(jsO);
            jsO = protocolJs.getJSONObject("route_changes").getJSONObject("export_updates");
            String route_change_export_updates = getRouteChange(jsO);
            jsO = protocolJs.getJSONObject("route_changes").getJSONObject("export_withdraws");
            String route_change_export_withdraws = getRouteChange(jsO);

            String bgp_state = protocolJs.getString("bgp_state");
            String neighbor_address = protocolJs.getString("neighbor_address");
            Integer neighbor_as = protocolJs.getInt("neighbor_as");
            String neighbor_id = "";
            try {
                neighbor_id = protocolJs.getString("neighbor_id");
            } catch (JSONException ex) {
            }

            String neighbor_capabilities = "";
            try {
                JSONArray ar = protocolJs.getJSONArray("neighbor_capabilities");
                for (Object aspo : ar) {
                    neighbor_capabilities += (String) aspo + " ";
                }
            } catch (JSONException ex) {
                neighbor_capabilities = "n/a";
            }

            String session = "";
            try {
                JSONArray ar = protocolJs.getJSONArray("bgp_session");
                for (Object aspo : ar) {
                    session += (String) aspo + " ";
                }
            } catch (JSONException ex) {
                session = "n/a";
            }

            String source_address = "";
            try {
                source_address = protocolJs.getString("source_address");
            } catch (JSONException ex) {
                session = "n/a";
            }
            Integer hold_timer = null;
            try {
                hold_timer = protocolJs.getInt("hold_timer");
            } catch (JSONException ex) {
                session = "n/a";
            }
            Integer route_limit_at = null;
            try {
                route_limit_at = protocolJs.getInt("route_limit_at");
            } catch (JSONException ex) {
                session = "n/a";
            }
            Integer keepalive = null;
            try {
                keepalive = protocolJs.getInt("keepalive");
            } catch (JSONException ex) {
                session = "n/a";
            }

            bgpDetalisData.setProtocol(protocol);
            bgpDetalisData.setBird_protocol(bird_protocol);
            bgpDetalisData.setState(state);
            bgpDetalisData.setState_changed(state_changed);
            bgpDetalisData.setConnection(connection);

            bgpDetalisData.setDescription(description);
            bgpDetalisData.setPreference(preference);
            bgpDetalisData.setInput_filter(input_filter);
            bgpDetalisData.setOutput_filter(output_filter);
            bgpDetalisData.setImport_limit(import_limit);
            bgpDetalisData.setLimit_action(limit_action);

            bgpDetalisData.setRoutes_imported(routes_imported);
            bgpDetalisData.setRoutes_exported(routes_exported);
            bgpDetalisData.setRoutes_preferred(routes_preferred);

            bgpDetalisData.setRoute_change_import_updates(route_change_import_updates);
            bgpDetalisData.setRoute_change_import_withdraws(route_change_import_withdraws);
            bgpDetalisData.setRoute_change_export_updates(route_change_export_updates);
            bgpDetalisData.setRoute_change_export_withdraws(route_change_export_withdraws);

            bgpDetalisData.setBgp_state(bgp_state);
            bgpDetalisData.setNeighbor_address(neighbor_address);
            bgpDetalisData.setNeighbor_as(neighbor_as);
            bgpDetalisData.setNeighbor_id(neighbor_id);

            bgpDetalisData.setNeighbor_capabilities(neighbor_capabilities);
            bgpDetalisData.setBgp_session(session);

            bgpDetalisData.setSource_address(source_address);
            bgpDetalisData.setHold_timer(hold_timer);
            bgpDetalisData.setRoute_limit_at(route_limit_at);
            bgpDetalisData.setKeepalive(keepalive);

        } catch (IOException | JSONException ex) {
        }

        Map<String, Object> outMap = new HashMap();
        outMap.put("lang", lang);
        outMap.put("bgpDetails", bgpDetalisData);

        return new ModelAndView("/site/lookingglass/bgp_details", outMap);
    }

    /**
     *
     * @param jsO
     * @return
     */
    private String getRouteChange(JSONObject jsO) {

        String out = "";

        try {
            Integer received = jsO.getInt("received");
            out += "recived: " + received + ", ";
        } catch (JSONException ex) {
        }

        try {
            Integer rejected = jsO.getInt("rejected");
            out += "rejected: " + rejected + ", ";
        } catch (JSONException ex) {
        }

        try {
            Integer filtered = jsO.getInt("filtered");
            out += "filtered: " + filtered + ", ";
        } catch (JSONException ex) {
        }

        try {
            Integer ignored = jsO.getInt("ignored");
            out += "ignored: " + ignored + ", ";
        } catch (JSONException ex) {
        }

        try {
            Integer accepted = jsO.getInt("accepted");
            out += "accepted: " + accepted + ", ";
        } catch (JSONException ex) {
        }

        return out.substring(0, out.length() - 2);
    }

    /**
     *
     * @param lang
     * @param name
     * @return
     */
    @RequestMapping("/{lang:ru|kk|en}/lookingglass/table/{name}")
    public ModelAndView table(@PathVariable String lang, @PathVariable String name) {

        List<TableData> tableDateList = new ArrayList<>();
        try {
            JSONObject json = new JSONObject(IOUtils.toString(new URL(TABLE_URL + name), Charset.forName("UTF-8")));

            JSONArray routes = json.getJSONArray("routes");
            routes.forEach(action -> {
                JSONObject rout = (JSONObject) action;

                String network = rout.getString("network");
                String gateway = rout.getString("gateway");
                Integer metric = rout.getInt("metric");
                Boolean primary = rout.getBoolean("primary");
                Integer communities = 0;

                String aspath = "";

                JSONArray ar = rout.getJSONObject("bgp").getJSONArray("as_path");
                for (Object aspo : ar) {
                    aspath += (String) aspo + " ";
                }

                try {
                    JSONArray ar1 = rout.getJSONObject("bgp").getJSONArray("communities");
                    communities = ar1.length();
                } catch (JSONException ex) {
                }

                String networkLink = "/" + lang + "/lookingglass/route/" + network;
                TableData tableData = new TableData();
                tableData.setNetwork(network);
                tableData.setNetworkLink(networkLink);
                tableData.setGateway(gateway);
                tableData.setMetric(metric);
                tableData.setCommunities(communities);
                tableData.setAspath(aspath);
                tableData.setPrimary(primary);

                tableDateList.add(tableData);
            });

        } catch (IOException ex) {
            name = "UNKNOWN";
        } catch (JSONException ex) {
        }

        Map<String, Object> outMap = new HashMap();
        outMap.put("tableDataList", tableDateList);
        outMap.put("tableName", name);

        return new ModelAndView("/site/lookingglass/table", outMap);
    }

    /**
     *
     * @param lang
     * @param ip
     * @param mask
     * @return
     */
    @RequestMapping("/{lang:ru|kk|en}/lookingglass/route/{ip}/{mask}")
    public ModelAndView rout(@PathVariable String lang, @PathVariable String ip, @PathVariable String mask) {

        String net;
        List<TableData> tableDateList = new ArrayList<>();
        try {

            net = ip + "/" + mask;

            String url = ROUT_URL + URLEncoder.encode(net, "UTF-8");

            JSONObject json = new JSONObject(IOUtils.toString(new URL(url), Charset.forName("UTF-8")));

            JSONArray routes = json.getJSONArray("routes");
            routes.forEach(action -> {
                JSONObject rout = (JSONObject) action;

                String network = rout.getString("network");
                String gateway = rout.getString("gateway");
                Integer metric = rout.getInt("metric");
                Boolean primary = rout.getBoolean("primary");
                String inter_face = rout.getString("interface");
                String age = rout.getString("age");
                String from_protocol = rout.getString("from_protocol");

                String origin = rout.getJSONObject("bgp").getString("origin");
                Integer med = null;
                try {
                    med = rout.getJSONObject("bgp").getInt("med");
                } catch (JSONException ex) {
                }
                String localPref = rout.getJSONObject("bgp").getString("local_pref");
                String aspath = "";
                JSONArray ar = rout.getJSONObject("bgp").getJSONArray("as_path");
                for (Object aspo : ar) {
                    aspath += (String) aspo + " ";
                }

                String type = "";
                JSONArray ar1 = rout.getJSONArray("type");
                for (Object t : ar1) {
                    type += (String) t + " ";
                }

                String communitiesList = "";
                try {
                    JSONArray ar2 = rout.getJSONObject("bgp").getJSONArray("communities");
                    for (Object o : ar2) {
                        JSONArray ar3 = (JSONArray) o;
                        communitiesList += "(";
                        int index = 0;
                        for (Object o1 : ar3) {
                            if (index > 0) {
                                communitiesList += ", ";
                            }
                            communitiesList += (Integer) o1;
                            index++;
                        }
                        communitiesList += ") ";
                    }
                } catch (JSONException ex) {
                }
                if (communitiesList.isEmpty()) {
                    communitiesList = null;
                }

                TableData tableData = new TableData();
                tableData.setNetwork(network);
                tableData.setGateway(gateway);
                tableData.setMetric(metric);
                tableData.setAspath(aspath);
                tableData.setInter_face(inter_face);
                tableData.setAge(age);
                tableData.setFromProtocol(from_protocol);
                tableData.setType(type);
                tableData.setOrigin(origin);
                tableData.setLocalPref(localPref);
                tableData.setCommunitiesList(communitiesList);
                tableData.setMed(med);
                tableData.setPrimary(primary);

                tableDateList.add(tableData);
            });

        } catch (IOException | JSONException ex) {
            net = "UNKNOWN";
        }

        Map<String, Object> outMap = new HashMap();
        outMap.put("tableDataList", tableDateList);
        outMap.put("net", net);

        return new ModelAndView("/site/lookingglass/route", outMap);
    }

    /**
     *
     * @param lang
     * @param lgSearchData
     * @param result
     * @param model
     * @return
     */
    @RequestMapping("/{lang:ru|kk|en}/lookingglass/search")
    public ModelAndView search(@PathVariable String lang,
            @Valid @ModelAttribute("lgSearchData") LgSearchData lgSearchData,
            BindingResult result,
            ModelMap model) {

        String ip = lgSearchData.getIp();

        if (ip == null || ip.isEmpty()) {
            return new ModelAndView("redirect:/" + lang + "/lookingglass/bgp");
        }

        try {

            JSONObject json = new JSONObject(IOUtils.toString(new URL(ROUT_URL + URLEncoder.encode(ip, "UTF-8")), Charset.forName("UTF-8")));

            JSONArray routes = json.getJSONArray("routes");
            JSONObject rout = routes.getJSONObject(0);
            if (rout != null) {
                String network = rout.getString("network");
                return new ModelAndView("redirect:/" + lang + "/lookingglass/route/" + network);
            }
        } catch (IOException | JSONException ex) {

        }

        return new ModelAndView("/site/lookingglass/bgp");
    }
}
...
Рейтинг: 0 / 0
Не читает все данные из JSON
    #39853985
skyboyy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
skyboyy,

Информация в одном из протоколов
...
Рейтинг: 0 / 0
Не читает все данные из JSON
    #39853986
skyboyy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
skyboyy,

Вот здесь он прочитал и вывел всего 4 протокола хотя их 7
...
Рейтинг: 0 / 0
Не читает все данные из JSON
    #39854005
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyboyyУ меня написан проектне вами?
Код зачем вывалили? Делайте пошаговую отладку.
Это наша работа.
...
Рейтинг: 0 / 0
Не читает все данные из JSON
    #39854008
skyboyy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PetroNotC Sharp,

Точнее я его дописывал, но контроллер не мной написан
...
Рейтинг: 0 / 0
Не читает все данные из JSON
    #39854011
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyboyyPetroNotC Sharp,

Точнее я его дописывал, но контроллер не мной написанпошаговая
...
Рейтинг: 0 / 0
Не читает все данные из JSON
    #39854012
skyboyy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
skyboyy,

Просто я не пойму почему он остальные 4 протокола читает, а вот 3 протокола пропускает и не показывает на сайте
...
Рейтинг: 0 / 0
Не читает все данные из JSON
    #39854026
Фотография asv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
какого года эта портянка?

про DTO вы видимо не слышали?)
зачем тянуть эти портянки с json наружу

ваша задача решается 10 строчками кода

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class BGPDataDTO{
    private String protocol;
    private String neighborAddress ;
    private String description ;
    private бла бла бла ;
}


далее получаете свой лист и кладете его в модель

Код: java
1.
2.
3.
4.
5.
6.
 @RequestMapping("/{lang:ru|kk|en}/lookingglass/bgp")
    public List<BGPDataDTO> findAllBgp(@PathVariable String lang){
        BGPDataDTO[]o=restTemplate.getForObject(URI,BGPDataDTO[].class);
       return Arrays.asList(o);
    }
}
...
Рейтинг: 0 / 0
Не читает все данные из JSON
    #39854031
Фотография Valentin Kolesnikov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyboyy,

Возможно случаются ошибки при чтении данных из json. Можете добавить логирование в блоках `catch`.

```
} catch (JSONException ex) {
}
```
...
Рейтинг: 0 / 0
Не читает все данные из JSON
    #39854032
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyboyyskyboyy,

Просто я не пойму почему он остальные 4 протокола читает, а вот 3 протокола пропускает и не показывает на сайтепошаговая
...
Рейтинг: 0 / 0
Не читает все данные из JSON
    #39854042
Фотография asv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valentin Kolesnikovskyboyy,

Возможно случаются ошибки при чтении данных из json. Можете добавить логирование в блоках `catch`.

```
} catch (JSONException ex) {
}
```
естествеено они будут случаться,там километровый джейсон ,который он пытается руками распарсить
и из него слепить объект


это мне напомнило доклад одного василия из почты россии,который сетовал на рулоны туалетной бумаги из джейсона,тогда как ему лишь нужно было из них две проперти ,про то чтобы сделать дто с двумя полями он не допетрил наверно,зато многомиллионый бюджет прокушал,а мы удивляемся чего почта России так работает.

пс.автор ты не из почты россии?
...
Рейтинг: 0 / 0
Не читает все данные из JSON
    #39854049
skyboyy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
asv79,

Нет я не из почты России друг) куда именно добавить логирование catch. я вроде поставил но так же. Может не туда пишу его
...
Рейтинг: 0 / 0
Не читает все данные из JSON
    #39854061
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
asv79,
Ему не DTO надо изучать, а try куда ставить. Согласись.
...
Рейтинг: 0 / 0
Не читает все данные из JSON
    #39854066
skyboyy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Valentin Kolesnikov,

Я добавил логирование, но почему то так же. Скорее всего может не так добавляю, можете более подробно написать
...
Рейтинг: 0 / 0
Не читает все данные из JSON
    #39854071
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyboyy,
Скрины давай. Работай.
...
Рейтинг: 0 / 0
Не читает все данные из JSON
    #39854072
skyboyy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PetroNotC Sharp,

Сейчас
...
Рейтинг: 0 / 0
Не читает все данные из JSON
    #39854074
Фотография asv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharpasv79,
Ему не DTO надо изучать, а try куда ставить. Согласись.
да я даже не смотрел,такие порятнки 20 летней давности никто уже не пишет,зачем автор мучается - проше заново переписать класс
...
Рейтинг: 0 / 0
Не читает все данные из JSON
    #39854081
kolchanov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyboyy,

Код: java
1.
2.
} catch (IOException | JSONException ex) {
        }



Avoid empty catch block
http://www.javapractices.com/topic/TopicAction.do?Id=16"

Надо логировать какие именно проблемы при разборе json возникают, тогда поймете куда делись остальные "протоколы".
...
Рейтинг: 0 / 0
Не читает все данные из JSON
    #39854085
забыл ник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да там на UI проблема, какой парсинг? Видно же что в дев консоли реквест возвращает 7 записей.

Где-то на фронте все теряется
...
Рейтинг: 0 / 0
Не читает все данные из JSON
    #39854099
skyboyy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
asv79,

Можно вопрос я же правильно написал по вашему методу

BGPDataDTO
Код: java
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.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.Data;

@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class BGPDataDTO{
    private String protocol;
    private String neighborAddress ;
    private String description ;

    private String protocolDetailLink;
    private String naighbord;
  
    private Integer asn;
    private String tableName;
    private String tableLink;
    private String status;
    private Integer routeImport;
    private Integer routeExport;
    private Integer importLimit;

    public String getProtocol() {
        return protocol;
    }

    public void setProtocol(String protocol) {
        this.protocol = protocol;
    }

    public String getProtocolDetailLink() {
        return protocolDetailLink;
    }

    public void setProtocolDetailLink(String protocolDetailLink) {
        this.protocolDetailLink = protocolDetailLink;
    }

    public String getNaighbord() {
        return naighbord;
    }

    public void setNaighbord(String naighbord) {
        this.naighbord = naighbord;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public Integer getAsn() {
        return asn;
    }

    public void setAsn(Integer asn) {
        this.asn = asn;
    }

    public String getTableName() {
        return tableName;
    }

    public void setTableName(String tableName) {
        this.tableName = tableName;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public Integer getRouteImport() {
        return routeImport;
    }

    public void setRouteImport(Integer routeImport) {
        this.routeImport = routeImport;
    }

    public Integer getRouteExport() {
        return routeExport;
    }

    public void setRouteExport(Integer routeExport) {
        this.routeExport = routeExport;
    }

    public Integer getImportLimit() {
        return importLimit;
    }

    public void setImportLimit(Integer importLimit) {
        this.importLimit = importLimit;
    }

    public String getTableLink() {
        return tableLink;
    }

    public void setTableLink(String tableLink) {
        this.tableLink = tableLink;
    }

}



LookingGlassController
Код: java
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.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
package kz.kaznix;

import kz.kaznix.data.LgSearchData;
import kz.kaznix.data.BGPData;
import kz.kaznix.data.TableData;
import java.io.IOException;
import java.net.URL;
import java.net.URLEncoder;
import java.nio.charset.Charset;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.validation.Valid;
import kz.kaznix.data.BGPDataDTO;
import kz.kaznix.data.BGPDetailData;
import org.apache.commons.io.IOUtils;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

@Controller
public class LookingGlassController {

    private final static String BGP_URL = "http://80.241.0.85/api/protocols/bgp";
    private final static String BGP_DETAILS_URL = "http://80.241.0.85/api/protocol/";
    private final static String TABLE_URL = "http://80.241.0.85/api/routes/table/";
    private final static String ROUT_URL = "http://80.241.0.85/api/route/";

    /**
     *
     * @param lang
     * @return
     */
    @RequestMapping("/{lang:ru|kk|en}/lookingglass/bgp")
    public ModelAndView bgp(@PathVariable String lang) {

       @RequestMapping("/{lang:ru|kk|en}/lookingglass/bgp")
    public List<BGPDataDTO> findAllBgp(@PathVariable String lang){
        BGPDataDTO[]o=restTemplate.getForObject(URI,BGPDataDTO[].class);
       return Arrays.asList(o);
    }
}
}



Я просто с такого рода проектом раньше не сталкивался
...
Рейтинг: 0 / 0
Не читает все данные из JSON
    #39854109
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyboyyPetroNotC Sharp,

Сейчасждем
...
Рейтинг: 0 / 0
Не читает все данные из JSON
    #39854122
skyboyy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PetroNotC Sharp,

Кажется в некоторых протокалах которые не показывает сайт там не правильно прописаны данные из-за этого не высвечивает их. Можно реализовать без DTO. Его я хочу изучить по позже когда время будет
...
Рейтинг: 0 / 0
Не читает все данные из JSON
    #39854129
skyboyy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PetroNotC Sharp,

Просто мне посоветовали с помощью DTO. Я думаю за 3 часа не успею изучить его, хочу на выходных когда целый день свободный будет тогда приступить к изучению чтобы хорошо его понять. Просто сегодня второй рабочий день после университета, там мы не проходили DTO.
...
Рейтинг: 0 / 0
Не читает все данные из JSON
    #39854144
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyboyyпо позже когда время будет
Я понял. ".. Сами мы не местные, помогите кто чем сможет...".
Жди альтруистов.
...
Рейтинг: 0 / 0
Не читает все данные из JSON
    #39854146
skyboyy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PetroNotC Sharp,

Можете стать альтруистом, я просто вот только выпустился, в универе все по малому давали. Вскоре времени все подучу
...
Рейтинг: 0 / 0
25 сообщений из 42, страница 1 из 2
Форумы / Java [игнор отключен] [закрыт для гостей] / Не читает все данные из JSON
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]