2017-02-08 10 views
0

私はサーバーからいくつかのJSON値を取得するために私のアンドロイドクライアントでVolleyを使用しています。サーバーからJSON配列リストを取得するにはどうすればよいですか?

@GET 
    @Produces("application/json") 
    public List<Employee> getEmployees() { 
     EmployeeDAO dao = new EmployeeDAO(); 
     List employees = dao.getEmployees(); 
     return employees; 
    } 

をしかし、私は「)(onErrorResponse」の値を取得しています Here is sample output

@Override 
      public void onClick(View v) { 
       queue = Volley.newRequestQueue(MapsActivity.this); 
       request = new JsonObjectRequest(
         Request.Method.GET, // the request method 
         "http://10.0.2.2:8080/SomeURL", 
         new JSONObject(map), 
         new Response.Listener<JSONObject>() { 
          @Override 
          public void onResponse(JSONObject response){ 

           textView = (TextView)findViewById(R.id.textView); 
           textView.setText(response.toString()); 
          } 
         }, 
         new Response.ErrorListener() { // the error listener 
          @Override 
          public void onErrorResponse(VolleyError error) { 
           textView = (TextView)findViewById(R.id.textView); 
           textView.setText("Error::"+ error.toString()); 
          Toast.makeText(getApplicationContext(), "Error:" + error.toString(), Toast.LENGTH_LONG).show(); 
          } 
         }); 

       queue.add(request); 
      } 

     }); 

そして

は、サーバ側では、私は次のように値を返す午前: は値を取得するために、私は次のことをやりました

+0

JSONObjectRequestは応答としてJSONObjectを期待していますが、JSONArrayを送信しています。サーバー側のJSONObjectの内部に配列をラップするか、StringRequestを使用して文字列を受け取ってJSONArrayとして解析します。 – jitinsharma

答えて

0

コード内にJSONObjectがあります。JsonObjectRequestJsonArrayrequestに変更します。 onResponse(JSONArray response)ではレスポンスを解析します

関連する問題