title: Error converting result java.lang.NullPointerException: lock == null, Why tthis error?
body: <p>This is the logcat</p>
  
  <pre><code>  D/request!(1826): [mtd=empLog, request[cmp_id]=, request[user_name]=sureshsk_cepl, request[password]=ceplvalrep2014, request[remember]=1, Phone_type=Android]
      I/Choreographer(1826): Skipped 39 frames!  The application may be doing too much work on its main thread.
      I/art(1826): Background sticky concurrent mark sweep GC freed 1612(81KB) AllocSpace objects, 0(0B) LOS objects, 19% free, 829KB/1026KB, paused 4.407ms total 114.250ms
      W/System.err(1826): org.apache.http.conn.HttpHostConnectException: Connection to http://localhost refused
      W/System.err(1826):     at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:183)
      W/System.err(1826):     at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
      W/System.err(1826):     at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
      W/System.err(1826):     at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:360)
      W/System.err(1826):     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
      W/System.err(1826):     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
      W/System.err(1826):     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
      W/System.err(1826):     at com.cepl.valrep.adapter.JSONParser.makeHttpRequest(JSONParser.java:52)
      W/System.err(1826):     at com.cepl.valrep.MainActivity$Login.doInBackground(MainActivity.java:120)
      W/System.err(1826):     at com.cepl.valrep.MainActivity$Login.doInBackground(MainActivity.java:1)
      W/System.err(1826):     at android.os.AsyncTask$2.call(AsyncTask.java:288)
      W/System.err(1826):     at java.util.concurrent.FutureTask.run(FutureTask.java:237)
      W/System.err(1826):     at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
      W/System.err(1826):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
      W/System.err(1826):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
      W/System.err(1826):     at java.lang.Thread.run(Thread.java:818)
      W/System.err(1826): Caused by: java.net.ConnectException: failed to connect to /127.0.0.1 (port 80): connect failed: ECONNREFUSED (Connection refused)
      W/System.err(1826):     at libcore.io.IoBridge.connect(IoBridge.java:124)
      W/System.err(1826):     at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:183)
      W/System.err(1826):     at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:456)
      W/System.err(1826):     at java.net.Socket.connect(Socket.java:882)
      W/System.err(1826):     at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:119)
      W/System.err(1826):     at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:144)
      W/System.err(1826):     ... 15 more
      W/System.err(1826): Caused by: android.system.ErrnoException: connect failed: ECONNREFUSED (Connection refused)
      W/System.err(1826):     at libcore.io.Posix.connect(Native Method)
      W/System.err(1826):     at libcore.io.BlockGuardOs.connect(BlockGuardOs.java:111)
      W/System.err(1826):     at libcore.io.IoBridge.connectErrno(IoBridge.java:137)
      W/System.err(1826):     at libcore.io.IoBridge.connect(IoBridge.java:122)
      W/System.err(1826):     ... 20 more
      E/Buffer Error(1826): Error converting result java.lang.NullPointerException: lock == null
      E/JSON Parser(1826): Error parsing data org.json.JSONException: End of input at character 0 of 
      W/System.err(1826): java.lang.NullPointerException: Attempt to invoke virtual method 'int org.json.JSONObject.getInt(java.lang.String)' on a null object reference
      W/System.err(1826):     at com.cepl.valrep.MainActivity$Login.doInBackground(MainActivity.java:126)
      W/System.err(1826):     at com.cepl.valrep.MainActivity$Login.doInBackground(MainActivity.java:1)
      W/System.err(1826):     at android.os.AsyncTask$2.call(AsyncTask.java:288)
      W/System.err(1826):     at java.util.concurrent.FutureTask.run(FutureTask.java:237)
      W/System.err(1826):     at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
      W/System.err(1826):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
      W/System.err(1826):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
      W/System.err(1826):     at java.lang.Thread.run(Thread.java:818)
      I/System.out(1826): Some error occurs
  </code></pre>
  
  <p>This is my JAVA code</p>
  
  <pre><code>public class MainActivity extends Activity implements OnClickListener{
  
      private EditText Edit_UserName,Edit_Password;
      private Button Login;
      private RadioButton Remember;
      TextView textview;
  
      HttpPost httppost;
      StringBuffer buffer;
      HttpResponse response;
      HttpClient httpclient;
      List&lt;NameValuePair&gt; nameValuePairs;
      ProgressDialog dialog = null;
  
      JSONParser jsonParser = new JSONParser(); 
      private static String url_login = "http://localhost/valrep/php/request.php?c=employee";
      private static final String TAG_SUCCESS = "success";
      private static final String TAG_MESSAGE = "message";
  
      static String mtd;
      static String cmp_id;
      static String login_username;
      static String login_password;
      String remember="0";
  
      AsyncTask&lt;Void, Void, Void&gt; mRegisterTask;
  
      @Override
      protected void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.activity_main);
  
          Edit_UserName = (EditText)findViewById(R.id.txtUserName);
          Edit_Password = (EditText)findViewById(R.id.txtDate);
          Login = (Button) findViewById(R.id.btnLogin);       
          Remember = (RadioButton)findViewById(R.id.btnCheckin);
          textview = (TextView)findViewById(R.id.textView1);
  
  //      Remember.setOnClickListener(this);
          Login.setOnClickListener(this);
      }
  
      @Override
      public void onClick(View v) {
  
          switch (v.getId()) {
          case R.id.btnLogin:
              login_username = Edit_UserName.getText().toString();
              login_password = Edit_Password.getText().toString();
  
              if (Remember.isChecked()) {
                  remember = "1";
              }else {
                  remember = "0";
              }
  
              new Login().execute();
  
  //          httpclient=new DefaultHttpClient();
  //          httppost= new HttpPost(url_login);
          }
      }   
          class Login extends AsyncTask&lt;String, String, String&gt;{
  
               boolean failure = false;
               private JSONArray jsonarray=null;
  
                  @Override
                  protected String doInBackground(String... args) {
  
                      int success;
  
                      try{
                          nameValuePairs = new ArrayList&lt;NameValuePair&gt;();
                          List&lt;NameValuePair&gt; params = new ArrayList&lt;NameValuePair&gt;();
                          params.add(new BasicNameValuePair("mtd", "empLog"));
                          params.add(new BasicNameValuePair("request[cmp_id]", ""));
                          params.add(new BasicNameValuePair("request[user_name]", login_username));
                          params.add(new BasicNameValuePair("request[password]", login_password));
                          params.add(new BasicNameValuePair("request[remember]", remember));
                          params.add(new BasicNameValuePair("Phone_type", "Android"));
  //                      httppost.setEntity(new UrlEncodedFormEntity(params));
  
                          Log.d("request!", params.toString());
  
                          JSONObject json = jsonParser.makeHttpRequest(url_login, "POST", params);
  
  //                      HttpResponse response = httpclient.execute(httppost);
  //                      
  //                      Log.d("request!",json.toString());
  
                          success = json.getInt(TAG_SUCCESS);
  
                          if (success == 1) {
  
                              Toast.makeText(getApplicationContext(), "Successfully loggedIn", Toast.LENGTH_LONG).show();
                              }
                          else {
  
                              Toast.makeText(getApplicationContext(), "Wrong username or password", Toast.LENGTH_LONG).show();
                          }
  
                      }catch (Exception e) {
                          e.printStackTrace();
                          System.out.println("Some error occurs");
                      }
  
                      // TODO Auto-generated method stub
                      return null;
                  }
          }
  
  }
  </code></pre>
  
  <p>My JSON parser is</p>
  
  <pre><code>public class JSONParser
  {
      static InputStream is = null;
      static JSONObject jObj = null;
      static String json = "";
  
      // constructor
      public JSONParser() {
  
      }
  
      // function get json from url
      // by making HTTP POST or GET mehtod
      public JSONObject makeHttpRequest(String url, String method,
              List&lt;NameValuePair&gt; params) {
  
          // Making HTTP request
          try {
  
              // check for request method
              if(method == "POST"){
  
                  // request method is POST
                  // defaultHttpClient
                  DefaultHttpClient httpClient = new DefaultHttpClient();
                  HttpPost httpPost = new HttpPost(url);
                  httpPost.setEntity(new UrlEncodedFormEntity(params));
  
                  HttpResponse httpResponse = httpClient.execute(httpPost);
                  HttpEntity httpEntity = httpResponse.getEntity();
                  is = httpEntity.getContent();
  
              }
              else if(method == "GET"){
                  // request method is GET
                  DefaultHttpClient httpClient = new DefaultHttpClient();
                  String paramString = URLEncodedUtils.format(params, "utf-8");
                  url += "?" + paramString;
                  HttpGet httpGet = new HttpGet(url);
  
                  HttpResponse httpResponse = httpClient.execute(httpGet);
                  HttpEntity httpEntity = httpResponse.getEntity();
                  is = httpEntity.getContent();
              }           
  
  
          } catch (UnsupportedEncodingException e) {
              e.printStackTrace();
          } catch (ClientProtocolException e) {
              e.printStackTrace();
          } catch (IOException e) {
              e.printStackTrace();
          }
  
          try {
              BufferedReader reader = new BufferedReader(new InputStreamReader(
                      is, "iso-8859-1"), 8);
              StringBuilder sb = new StringBuilder();
              String line = null;
              while ((line = reader.readLine()) != null) {
                  sb.append(line + "\n");
              }
              is.close();
              json = sb.toString();
          } catch (Exception e) {
              Log.e("Buffer Error", "Error converting result " + e.toString());
          }
  
          // try parse the string to a JSON object
          try {
              //Log.d("response string",json);
              jObj = new JSONObject(json);
          } catch (JSONException e) {
              Log.e("JSON Parser", "Error parsing data " + e.toString());
          }
  
          // return JSON String
          return jObj;
  
      }
  }
  </code></pre>