错误java.lang.NoClassDefFoundError:org/apache/http/client/methods/HttpUriRequest

错误java.lang.NoClassDefFoundError:org/apache/http/client/methods/HttpUriRequest,java,jsp,servlets,jakarta-ee,tomcat7,Java,Jsp,Servlets,Jakarta Ee,Tomcat7,我正在一个动态Web项目中使用EclipseJavaEEIDE。 运行servlet“Controleur2”后,出现以下错误: ERROR HTTP 500 javax.servlet.ServletException: L''exécution de la servlet a lancé une exception org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) cause mère j

我正在一个动态Web项目中使用EclipseJavaEEIDE。 运行servlet“Controleur2”后,出现以下错误:

ERROR HTTP 500
javax.servlet.ServletException: L''exécution de la servlet a lancé une exception
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

cause mère 
java.lang.NoClassDefFoundError: org/apache/http/client/methods/HttpUriRequest
    servlets.ControleurForm.doPost(ControleurForm.java:44)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:646)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

cause mère 
java.lang.ClassNotFoundException: org.apache.http.client.methods.HttpUriRequest
    org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1720)
    org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1571)
    servlets.ControleurForm.doPost(ControleurForm.java:44)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:646)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
以下是我的servlet:

控制欧元2

package servlets;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


/**
 * Servlet implementation class Controleur2
 */
@WebServlet("/Controleur2")
public class Controleur2 extends HttpServlet {
    private static final long serialVersionUID = 1L;

    /**
     * @see HttpServlet#HttpServlet()
     */
    public Controleur2() {
        super();

    }

    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        request.setAttribute("orga","salut");
        this.getServletContext().getRequestDispatcher("/index.jsp").forward(request, response);
    }

    /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        this.doGet(request, response);
    }

}
控制神经形态

    package servlets;

import java.io.IOException;
import java.util.Map;

import org.apache.http.client.methods.HttpUriRequest;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import dataPackage.Data;
import dataPackage.Model;

/**
 * Servlet implementation class ControleurForm
 */
@WebServlet("/ControleurForm")
public class ControleurForm extends HttpServlet {
    private static final long serialVersionUID = 1L;

    /**
     * @see HttpServlet#HttpServlet()
     */
    public ControleurForm() {
        super();
        // TODO Auto-generated constructor stub
    }
    public void init() throws ServletException {
        // TODO Auto-generated method stub
        super.init();
        }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        this.doPost(request,response);
    }
    /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        String orga = request.getParameter("orga"); //lecture des données fournies par l'utilisateur
        Data data = new Data("2018-10-04","2018-10-05","ELECTRICITE DE France","0fe13821-9014-4cc5-a5f9-469a5a04b2e9"); //création de l'objet Data en fonction
        Map<String, Object> map = data.getData(); //appel de la méthode pour récupérer la réponse
        request.setAttribute("datamap",map);
        this.getServletContext().getRequestDispatcher("/charts.jsp").forward(request, response);
    }

}
包servlet;
导入java.io.IOException;
导入java.util.Map;
导入org.apache.http.client.methods.HttpUriRequest;
导入javax.servlet.ServletException;
导入javax.servlet.annotation.WebServlet;
导入javax.servlet.http.HttpServlet;
导入javax.servlet.http.HttpServletRequest;
导入javax.servlet.http.HttpServletResponse;
导入dataPackage.Data;
导入dataPackage.Model;
/**
*Servlet实现类ControleurForm
*/
@WebServlet(“/ControleurForm”)
公共类ControleurForm扩展了HttpServlet{
私有静态最终长serialVersionUID=1L;
/**
*@参见HttpServlet#HttpServlet()
*/
公共控制表格(){
超级();
//TODO自动生成的构造函数存根
}
public void init()引发ServletException{
//TODO自动生成的方法存根
super.init();
}
受保护的void doGet(HttpServletRequest请求,HttpServletResponse响应)抛出ServletException,IOException{
此.doPost(请求、响应);
}
/**
*@请参阅HttpServlet#doPost(HttpServletRequest请求,HttpServletResponse响应)
*/
受保护的void doPost(HttpServletRequest请求、HttpServletResponse响应)引发ServletException、IOException{
//TODO自动生成的方法存根
String Org=请求.GETPARDATION(ORGA);
数据数据=新数据(“2018-10-04”、“2018-10-05”、“法兰西电力公司”、“0fe13821-9014-4cc5-a5f9-469a5a04b2e9”);//目标数据变更
Map Map=data.getData();//杯赛马术
setAttribute(“数据映射”,映射);
this.getServletContext().getRequestDispatcher(“/charts.jsp”).forward(请求,响应);
}
}
以下是我的JSP文件:

索引


StatsAPIViewer
Ceci est une页面générée depuis une JSP

API:
电石 电工

图表

    <?xml version="1.0" encoding="ISO-8859-1" ?>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>

<%@page import="java.util.*" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>Your chart</title>
</head>
<body>
Page de graphes
        <p>
        <% 
            String attribut2 = (String) request.getAttribute("data");
            out.println( attribut2 );
            %></p>
</body>
</html>

你的图表
页面图形

这是我的java类:

数据类

package dataPackage;

import java.io.IOException;
import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.Map;

import org.apache.http.HttpStatus;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;

import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.reflect.TypeToken;



public class Data {

    private String from;
    private String to;
    private String orga;
    private String client;


    public Data(String pFrom, String pTo, String pOrga, String pClient) {
        from = pFrom;
        to = pTo;
        orga = pOrga;
        client = pClient;
      }



    public Map<String, Object> getData() throws IOException {

        Map<String, Object> mapApp = null;
        String organization = URLEncoder.encode(this.orga, "UTF-8");

        try (CloseableHttpClient httpClient = HttpClients.createDefault()) {
            System.setProperty("jsse.enableSNIExtension", "false");

            final String url = "https://vespa-prd-api1-gmg.rte-france.com/api/portal/v1.3/metrics/reports/api/summary/0?from="+ this.from+"T22%3A00%3A00Z&to="+this.to+"T13%3A23%3A58Z&organization="+organization+"&client="+this.client+"&reportsubtype=trafficAll";
            final HttpGet get = new HttpGet(url);
            get.addHeader("Authorization", "Basic YXBpYWRtaW46Y2hhbmdlbWU=");
            //System.out.println("here");
            //System.out.println(get);
            try (final CloseableHttpResponse response = httpClient.execute(get)) {

                if (response.getStatusLine().getStatusCode() != HttpStatus.SC_OK) {
                    System.out.println("Erreur : "+response.getStatusLine().getStatusCode());
                }

                String jsonResponse = EntityUtils.toString(response.getEntity());

                ObjectMapper objectmapper = new ObjectMapper();
                ArrayList<Object> jsonList = objectmapper.readValue(jsonResponse,ArrayList.class);
                //System.out.println(jsonList);

                //JSON PARSER
                final GsonBuilder builder = new GsonBuilder();
                builder.setPrettyPrinting();
                builder.disableHtmlEscaping();
                builder.serializeNulls();
                builder.setLenient();
                final Gson gson = builder.create();

                ArrayList<Object> listFailures = new ArrayList<>();
                ArrayList<Object> listTime = new ArrayList<>();
                ArrayList<Object> listSuccesses = new ArrayList<>();
                ArrayList<Object> listExceptions = new ArrayList<>();
                ArrayList<Object> listNumMessages = new ArrayList<>();




                for(Object truc : jsonList) {
                    String jsonInString = gson.toJson(truc); /**on force à ce qu'il soit reconnu comme json */
                    mapApp = gson.fromJson(jsonInString, new TypeToken<Map<String, Object>>() {}.getType()); //on l'insère dans une map
                    //mapApp.forEach((x,y)-> System.out.println("key : " + x + " , value : " + y));
                    //System.out.println(mapApp.get("totalNumMessages"));
                    listFailures.add(mapApp.get("totalFailures")); //on ajoute la donnée voulue dans la liste
                    listTime.add(mapApp.get("totalProcessingTimeAvg"));
                    listTime.add(mapApp.get("totalNumMessages"));
                    listSuccesses.add(mapApp.get("totalSuccesses"));
                    listExceptions.add(mapApp.get("totalExceptions"));
                    listNumMessages.add(mapApp.get("totalNumMessages"));
                }
            }
            catch (IOException e) {
                System.out.println(e);
            }
        }

        return mapApp;
    }


    public static double sumData(ArrayList<Object> list) {
        double somme=0;
        for (Object objet : list) {
            somme = somme + Double.parseDouble(objet.toString());
        }
        return somme;
    }

    public static double sumTime(ArrayList<Object> list) {
        double somme=0;
        int n = list.size();
        for (int i=0; i<(n-1); i++) {
            i=i+1;
            somme = somme + (Double.parseDouble(list.get(i-1).toString())*(Double.parseDouble(list.get(i).toString())));
        }
        double moy = somme/(n/2);
        return moy;
    }

    public static Map<String, Object> getTimeline(String from, String to, String orga, String client) throws IOException {

        Map<String, Object> mapApp = null;
        String organization = URLEncoder.encode(orga, "UTF-8");

        try (CloseableHttpClient httpClient = HttpClients.createDefault()) {
            System.setProperty("jsse.enableSNIExtension", "false");

            final String url;

            if (client == null) {
                url = "https://vespa-prd-api1-gmg.rte-france.com/api/portal/v1.3/metrics/reports/app/timeline/0/numMessages?from="+from+"T22%3A00%3A00Z&to="+to+"T14%3A46%3A58Z&organization="+organization+"&reportsubtype=trafficAll";
            }
            else {
                url = "https://vespa-prd-api1-gmg.rte-france.com/api/portal/v1.3/metrics/reports/app/timeline/0/numMessages?from="+from+"T22%3A00%3A00Z&to="+to+"T14%3A46%3A58Z&organization="+orga+"&client="+client+"&reportsubtype=trafficAll";
            }

            final HttpGet get = new HttpGet(url);
            get.addHeader("Authorization", "Basic YXBpYWRtaW46Y2hhbmdlbWU=");
            try (final CloseableHttpResponse response = httpClient.execute(get)) {

                if (response.getStatusLine().getStatusCode() != HttpStatus.SC_OK) {
                    System.out.println("Erreur : "+response.getStatusLine().getStatusCode());
                }

                String jsonResponse = EntityUtils.toString(response.getEntity());

                ObjectMapper objectmapper = new ObjectMapper();
                objectmapper.configure(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY, true);
                ArrayList<Object> jsonList = objectmapper.readValue(jsonResponse,ArrayList.class);

                //JSON PARSER
                final GsonBuilder builder = new GsonBuilder();
                builder.setPrettyPrinting();
                builder.disableHtmlEscaping();
                builder.serializeNulls();
                builder.setLenient();
                final Gson gson = builder.create();

                ArrayList<Object> listData= new ArrayList<>();


                for(Object truc : jsonList) {
                    String jsonInString = gson.toJson(truc);
                    mapApp = gson.fromJson(jsonInString, new TypeToken<Map<String, Object>>() {}.getType()); //on l'insère dans une map
                    //mapApp.forEach((x,y)-> System.out.println("key : " + x + " , value : " + y));
                    String jsonSeries = gson.toJson(mapApp.get("series"));

                    ArrayList<Object> jsonList2 = objectmapper.readValue(jsonSeries, ArrayList.class);

                    for (Object truc2 : jsonList2) {
                        String jsonString = gson.toJson(truc2);
                        Map<String, Object> mapApp2 = gson.fromJson(jsonString, new TypeToken<Map<String, Object>>() {}.getType());
                        //mapApp2.forEach((x, y) -> System.out.println("key : " + x + " , value : " + y));
                        listData.add(mapApp2.get("data"));
                    }
                }
                //System.out.println(listData);
            }
        }
        return mapApp;
    }

}
包数据包;
导入java.io.IOException;
导入java.net.urlcoder;
导入java.util.ArrayList;
导入java.util.Map;
导入org.apache.http.HttpStatus;
导入org.apache.http.client.methods.CloseableHttpResponse;
导入org.apache.http.client.methods.HttpGet;
导入org.apache.http.impl.client.CloseableHttpClient;
导入org.apache.http.impl.client.HttpClients;
导入org.apache.http.util.EntityUtils;
导入com.fasterxml.jackson.databind.DeserializationFeature;
导入com.fasterxml.jackson.databind.ObjectMapper;
导入com.google.gson.gson;
导入com.google.gson.GsonBuilder;
导入com.google.gson.reflect.TypeToken;
公共类数据{
来自的私有字符串;
私有字符串到;
私人字符串组织;
私有字符串客户端;
公共数据(字符串pFrom、字符串pTo、字符串pOrga、字符串pClient){
from=pFrom;
to=pTo;
orga=pOrga;
客户=pClient;
}
公共映射getData()引发IOException{
Map mapApp=null;
字符串组织=URLEncoder.encode(this.orga,“UTF-8”);
try(CloseableHttpClient-httpClient=HttpClients.createDefault()){
System.setProperty(“jsse.enableSNIExtension”、“false”);
最终字符串url=”https://vespa-prd-api1-gmg.rte-france.com/api/portal/v1.3/metrics/reports/api/summary/0?from=“+this.from+”T22%3A00%3A00Z&to=“+this.to+”T13%3A23%3A58Z&organization=“+organization+”&client=“+this.client+”&reportsubtype=trafficAll”;
最终HttpGet=新HttpGet(url);
get.addHeader(“授权”,“基本YXBpYWRtaW46Y2hhbmdlbWU=”);
//System.out.println(“此处”);
//System.out.println(get);
try(final CloseableHttpResponse response=httpClient.execute(get)){
if(response.getStatusLine().getStatusCode()!=HttpStatus.SC\u OK){
System.out.println(“Erreur:+response.getStatusLine().getStatusCode());
}
字符串jsonResponse=EntityUtils.toString(response.getEntity());
ObjectMapper ObjectMapper=新的ObjectMapper();
ArrayList jsonList=objectmapper.readValue(jsonResponse,ArrayList.class);
//System.out.println(jsonList);
//JSON解析器
最终GsonBuilder=新的GsonBuilder();
setPrettyPrinting();
builder.disableHtmlEscaping();
序列化null();
builder.setLenient();
final Gson Gson=builder.create();
ArrayList listFailures=新建ArrayList();
ArrayList listTime=新建ArrayList();
ArrayList成功=新建ArrayList();
ArrayList listExceptions=新的ArrayList();
ArrayList listNumMessages=新建ArrayList();
for(对象结构:jsonList){
字符串jsonInString=gson.toJson(trc);/**on forceáce qu'il soit reconner comm json*/
mapApp=gson.fromJson(jsonInString,new-TypeToken(){}.getType());//在l'insère dans une映射上
//mapApp.forEach((x,y)->System.out.println(“键:+x+”,值:+y));
//System.out.println(mapApp.get(“totalNumMessages”);
listFailures.add(mapApp.get(“totalFailures”);//在一个叫donnée voulue dans la liste的网站上
add(mapApp.get(“totalProcessingTimeAvg”);
添加(m)
package dataPackage;

import java.io.IOException;
import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.Map;

import org.apache.http.HttpStatus;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;

import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.reflect.TypeToken;



public class Data {

    private String from;
    private String to;
    private String orga;
    private String client;


    public Data(String pFrom, String pTo, String pOrga, String pClient) {
        from = pFrom;
        to = pTo;
        orga = pOrga;
        client = pClient;
      }



    public Map<String, Object> getData() throws IOException {

        Map<String, Object> mapApp = null;
        String organization = URLEncoder.encode(this.orga, "UTF-8");

        try (CloseableHttpClient httpClient = HttpClients.createDefault()) {
            System.setProperty("jsse.enableSNIExtension", "false");

            final String url = "https://vespa-prd-api1-gmg.rte-france.com/api/portal/v1.3/metrics/reports/api/summary/0?from="+ this.from+"T22%3A00%3A00Z&to="+this.to+"T13%3A23%3A58Z&organization="+organization+"&client="+this.client+"&reportsubtype=trafficAll";
            final HttpGet get = new HttpGet(url);
            get.addHeader("Authorization", "Basic YXBpYWRtaW46Y2hhbmdlbWU=");
            //System.out.println("here");
            //System.out.println(get);
            try (final CloseableHttpResponse response = httpClient.execute(get)) {

                if (response.getStatusLine().getStatusCode() != HttpStatus.SC_OK) {
                    System.out.println("Erreur : "+response.getStatusLine().getStatusCode());
                }

                String jsonResponse = EntityUtils.toString(response.getEntity());

                ObjectMapper objectmapper = new ObjectMapper();
                ArrayList<Object> jsonList = objectmapper.readValue(jsonResponse,ArrayList.class);
                //System.out.println(jsonList);

                //JSON PARSER
                final GsonBuilder builder = new GsonBuilder();
                builder.setPrettyPrinting();
                builder.disableHtmlEscaping();
                builder.serializeNulls();
                builder.setLenient();
                final Gson gson = builder.create();

                ArrayList<Object> listFailures = new ArrayList<>();
                ArrayList<Object> listTime = new ArrayList<>();
                ArrayList<Object> listSuccesses = new ArrayList<>();
                ArrayList<Object> listExceptions = new ArrayList<>();
                ArrayList<Object> listNumMessages = new ArrayList<>();




                for(Object truc : jsonList) {
                    String jsonInString = gson.toJson(truc); /**on force à ce qu'il soit reconnu comme json */
                    mapApp = gson.fromJson(jsonInString, new TypeToken<Map<String, Object>>() {}.getType()); //on l'insère dans une map
                    //mapApp.forEach((x,y)-> System.out.println("key : " + x + " , value : " + y));
                    //System.out.println(mapApp.get("totalNumMessages"));
                    listFailures.add(mapApp.get("totalFailures")); //on ajoute la donnée voulue dans la liste
                    listTime.add(mapApp.get("totalProcessingTimeAvg"));
                    listTime.add(mapApp.get("totalNumMessages"));
                    listSuccesses.add(mapApp.get("totalSuccesses"));
                    listExceptions.add(mapApp.get("totalExceptions"));
                    listNumMessages.add(mapApp.get("totalNumMessages"));
                }
            }
            catch (IOException e) {
                System.out.println(e);
            }
        }

        return mapApp;
    }


    public static double sumData(ArrayList<Object> list) {
        double somme=0;
        for (Object objet : list) {
            somme = somme + Double.parseDouble(objet.toString());
        }
        return somme;
    }

    public static double sumTime(ArrayList<Object> list) {
        double somme=0;
        int n = list.size();
        for (int i=0; i<(n-1); i++) {
            i=i+1;
            somme = somme + (Double.parseDouble(list.get(i-1).toString())*(Double.parseDouble(list.get(i).toString())));
        }
        double moy = somme/(n/2);
        return moy;
    }

    public static Map<String, Object> getTimeline(String from, String to, String orga, String client) throws IOException {

        Map<String, Object> mapApp = null;
        String organization = URLEncoder.encode(orga, "UTF-8");

        try (CloseableHttpClient httpClient = HttpClients.createDefault()) {
            System.setProperty("jsse.enableSNIExtension", "false");

            final String url;

            if (client == null) {
                url = "https://vespa-prd-api1-gmg.rte-france.com/api/portal/v1.3/metrics/reports/app/timeline/0/numMessages?from="+from+"T22%3A00%3A00Z&to="+to+"T14%3A46%3A58Z&organization="+organization+"&reportsubtype=trafficAll";
            }
            else {
                url = "https://vespa-prd-api1-gmg.rte-france.com/api/portal/v1.3/metrics/reports/app/timeline/0/numMessages?from="+from+"T22%3A00%3A00Z&to="+to+"T14%3A46%3A58Z&organization="+orga+"&client="+client+"&reportsubtype=trafficAll";
            }

            final HttpGet get = new HttpGet(url);
            get.addHeader("Authorization", "Basic YXBpYWRtaW46Y2hhbmdlbWU=");
            try (final CloseableHttpResponse response = httpClient.execute(get)) {

                if (response.getStatusLine().getStatusCode() != HttpStatus.SC_OK) {
                    System.out.println("Erreur : "+response.getStatusLine().getStatusCode());
                }

                String jsonResponse = EntityUtils.toString(response.getEntity());

                ObjectMapper objectmapper = new ObjectMapper();
                objectmapper.configure(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY, true);
                ArrayList<Object> jsonList = objectmapper.readValue(jsonResponse,ArrayList.class);

                //JSON PARSER
                final GsonBuilder builder = new GsonBuilder();
                builder.setPrettyPrinting();
                builder.disableHtmlEscaping();
                builder.serializeNulls();
                builder.setLenient();
                final Gson gson = builder.create();

                ArrayList<Object> listData= new ArrayList<>();


                for(Object truc : jsonList) {
                    String jsonInString = gson.toJson(truc);
                    mapApp = gson.fromJson(jsonInString, new TypeToken<Map<String, Object>>() {}.getType()); //on l'insère dans une map
                    //mapApp.forEach((x,y)-> System.out.println("key : " + x + " , value : " + y));
                    String jsonSeries = gson.toJson(mapApp.get("series"));

                    ArrayList<Object> jsonList2 = objectmapper.readValue(jsonSeries, ArrayList.class);

                    for (Object truc2 : jsonList2) {
                        String jsonString = gson.toJson(truc2);
                        Map<String, Object> mapApp2 = gson.fromJson(jsonString, new TypeToken<Map<String, Object>>() {}.getType());
                        //mapApp2.forEach((x, y) -> System.out.println("key : " + x + " , value : " + y));
                        listData.add(mapApp2.get("data"));
                    }
                }
                //System.out.println(listData);
            }
        }
        return mapApp;
    }

}
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src"/>
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jre1.8.0_181">
        <attributes>
            <attribute name="owner.project.facets" value="java"/>
        </attributes>
    </classpathentry>
    <classpathentry kind="con" path="org.eclipse.jst.server.core.container/org.eclipse.jst.server.tomcat.runtimeTarget/Apache Tomcat v7.0 (2)">
        <attributes>
            <attribute name="owner.project.facets" value="jst.web"/>
        </attributes>
    </classpathentry>
    <classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.web.container"/>
    <classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.module.container"/>
    <classpathentry kind="lib" path="C:/Users/piriouame/eclipse-workspace/lib/gson-2.6.2.jar"/>
    <classpathentry kind="lib" path="C:/Users/piriouame/eclipse-workspace/lib/gson-2.8.5-javadoc.jar"/>
    <classpathentry kind="lib" path="C:/Users/piriouame/eclipse-workspace/lib/jackson-annotations-2.6.0.jar"/>
    <classpathentry kind="lib" path="C:/Users/piriouame/eclipse-workspace/lib/jackson-core-2.6.3.jar"/>
    <classpathentry kind="lib" path="C:/Users/piriouame/eclipse-workspace/lib/jackson-databind-2.6.3.jar"/>
    <classpathentry kind="lib" path="C:/Users/piriouame/eclipse-workspace/lib/jackson-dataformat-csv-2.1.2.jar"/>
    <classpathentry kind="lib" path="C:/Users/piriouame/eclipse-workspace/lib/httpcomponents-client-4.5.6/lib/commons-codec-1.10.jar"/>
    <classpathentry kind="lib" path="C:/Users/piriouame/eclipse-workspace/lib/httpcomponents-client-4.5.6/lib/commons-logging-1.2.jar"/>
    <classpathentry kind="lib" path="C:/Users/piriouame/eclipse-workspace/lib/httpcomponents-client-4.5.6/lib/fluent-hc-4.5.6.jar"/>
    <classpathentry kind="lib" path="C:/Users/piriouame/eclipse-workspace/lib/httpcomponents-client-4.5.6/lib/httpclient-4.5.6.jar"/>
    <classpathentry kind="lib" path="C:/Users/piriouame/eclipse-workspace/lib/httpcomponents-client-4.5.6/lib/httpclient-cache-4.5.6.jar"/>
    <classpathentry kind="lib" path="C:/Users/piriouame/eclipse-workspace/lib/httpcomponents-client-4.5.6/lib/httpclient-win-4.5.6.jar"/>
    <classpathentry kind="lib" path="C:/Users/piriouame/eclipse-workspace/lib/httpcomponents-client-4.5.6/lib/httpcore-4.4.10.jar"/>
    <classpathentry kind="lib" path="C:/Users/piriouame/eclipse-workspace/lib/httpcomponents-client-4.5.6/lib/httpmime-4.5.6.jar"/>
    <classpathentry kind="lib" path="C:/Users/piriouame/eclipse-workspace/lib/httpcomponents-client-4.5.6/lib/jna-4.4.0.jar"/>
    <classpathentry kind="lib" path="C:/Users/piriouame/eclipse-workspace/lib/httpcomponents-client-4.5.6/lib/jna-platform-4.4.0.jar"/>
    <classpathentry kind="output" path="WebContent/WEB-INF/classes"/>
</classpath>
        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpclient</artifactId>
            <version>4.5.12</version>
            <!-- <scope>test</scope> -->
        </dependency>