title: pass arraylist bean from android to webservice php
body: <p>i'm newbie in android with web service</p>
  
  <p>i'm trying to pass arraylist from android to webservice php server</p>
  
  <p>here's my bean code:</p>
  
  <pre><code>public class ExpressionBean {
      public static final String EXPRESSION_ID = "expressionID";
      public static final String EXPRESSION_TEXT = "expressionText";
      public static final String ANS_TEXT1 = "ansText1";
      public static final String ANS_TEXT2 = "ansText2";
      public static final String ASSESSEE_ANSWER = "assesseeAnswer";
  
      private String expressionID;
      private String expressionText;
      private String ansText1;
      private String ansText2;
      private String assesseeAnswer;
  
      public String getExpressionID() {
          return expressionID;
      }
  
      public void setExpressionID(String expressionID) {
          this.expressionID = expressionID;
      }
  
      public String getExpressionText() {
          return expressionText;
      }
  
      public void setExpressionText(String expressionText) {
          this.expressionText = expressionText;
      }
  
      public String getAnsText1() {
          return ansText1;
      }
  
      public void setAnsText1(String ansText1) {
          this.ansText1 = ansText1;
      }
  
      public String getAnsText2() {
          return ansText2;
      }
  
      public void setAnsText2(String ansText2) {
          this.ansText2 = ansText2;
      }
  
      public String getAssesseeAnswer() {
          return assesseeAnswer;
      }
  
      public void setAssesseeAnswer(String assesseeAnswer) {
          this.assesseeAnswer = assesseeAnswer;
      }
  
  }
  </code></pre>
  
  <p>and here's my doInBackround on async task :</p>
  
  <pre><code>protected Boolean doInBackground(Void... params) {
              // TODO: attempt authentication against a network service.
  
              boolean result = false;
              // test = new TestBean();
  
              // int resultTest = 0;
              UserFunctions userFunction = new UserFunctions();
  
              Log.d(TAG, "UID : " + mEmail);
              // Log.d(TAG, "resultTest : " + resultTest);
              JSONObject jsonTest = userFunction.storeTest(mEmail);
              Log.d(TAG, "After JSON TEST ");
  
              try {
                  if (jsonTest.getString(KEY_SUCCESS) != null) {
                      String res = jsonTest.getString(KEY_SUCCESS);
                      JSONObject testData = jsonTest.getJSONObject(TAG_TEST);
                      test = new TestBean();
                      test.setTestid(testData.getInt(TAG_TEST_ID));
                      test.setUid(testData.getInt(TAG_UID));
                      JSONArray list = new JSONArray();
                      String list2;
                      for (int position = 0; position &lt; expressionList.size(); position++) {
                          Gson gson = new Gson();
                          list.put(gson.toJson(expressionList.get(position)));
  
                      }
                      Log.d(TAG, "JSONArray list coy : " + list);
                      UserFunctions uf = new UserFunctions();
  
                      JSONObject jsonHistoryList = new JSONObject();
                      jsonHistoryList = uf.storeHistoryList(list.toString());
                      if (Integer.parseInt(res) == 1) {
                          result = true;
                          finish();
                      } else {
                          result = false;
                      }
                  }
              } catch (JSONException e) {
                  e.printStackTrace();
                  return false;
              }
  
              // TODO: register the new account here.
              return result;
          }
  </code></pre>
  
  <p>and here's storeHistoryList Method :</p>
  
  <pre><code>public JSONObject storeHistoryList(String list) {
  
          // Building Parameters
          List&lt;NameValuePair&gt; params = new ArrayList&lt;NameValuePair&gt;();
          params.add(new BasicNameValuePair("tag", storeHistory_tag));
          params.add(new BasicNameValuePair("list", list));
  
          JSONObject json = jsonParser.getJSONFromUrl(URL, params);
          return json;
      }
  </code></pre>
  
  <p>i want to pass list to web service</p>
  
  <p>list is an arraylist ExpressionBean</p>
  
  <p>i used gson for convert bean to json</p>
  
  <p>but when i execute, the log said</p>
  
  <p>"error parsing data...</p>
  
  <p>jsonarray cannot be converted to jsonobject</p>
  
  <p>what i must to do?
  thanks</p>