title: E/AndroidRuntime﹕ FATAL EXCEPTION: AsyncTask #1 java.lang.RuntimeException: An error occured while executing doInBackground()
body: <p>I am trying to send some parameters for post method from a class that extends <code>AsyncTask</code> and this does not work because I get an error.</p>
  
  <p>this is my logcat</p>
  
  <pre><code> 06-30 20:59:14.159      614-632/com.example.aastudillo.cats
   E/AndroidRuntime﹕ FATAL EXCEPTION: AsyncTask #1
       java.lang.RuntimeException: An error occured while executing doInBackground()
               at android.os.AsyncTask$3.done(AsyncTask.java:278)
               at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java:273)
               at java.util.concurrent.FutureTask.setException(FutureTask.java:124)
               at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:307)
               at java.util.concurrent.FutureTask.run(FutureTask.java:137)
               at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
               at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
               at java.lang.Thread.run(Thread.java:856)
        Caused by: java.lang.NullPointerException
               at com.example.aastudillo.cats.Login$ValidatingLogin.doInBackground(Login.java:110)
               at com.example.aastudillo.cats.Login$ValidatingLogin.doInBackground(Login.java:93)
               at android.os.AsyncTask$2.call(AsyncTask.java:264)
               at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
               at java.util.concurrent.FutureTask.run(FutureTask.java:137)
               at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
               at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
               at java.lang.Thread.run(Thread.java:856)
  </code></pre>
  
  <p>login.java</p>
  
  <pre><code>public class Login extends Activity {
  
  
      public static final String url = "http://192.168.0.217:80/Services/WebService.php";
      private static final String TAG_SUCCESS = "success";
      private static final String TAG_MESSAGE = "message";
  
      private ProgressDialog pDialog;
      Button btnLogin;
      Button btnLinkToRegister;
      EditText emailEditText;
      EditText PasswordEditText;
      TextView Vista;
  
      HttpHandler httpHandler = new HttpHandler();
  
      @Override
      public void onPause() {
          super.onPause();
          if (pDialog != null) {
              pDialog.dismiss();
          }
      }
  
      @Override
      public void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.login);
  
          Vista = (TextView) findViewById(R.id.Vista);
          emailEditText = (EditText) findViewById(R.id.email);
          PasswordEditText = (EditText) findViewById(R.id.password);
          btnLogin = (Button) findViewById(R.id.btnLogin);
          btnLinkToRegister = (Button) findViewById(R.id.btnLinkToRegisterScreen);
          btnLogin.setOnClickListener(new Button.OnClickListener() {
  
              @Override
              public void onClick(View v) {
                  btnLogin.setClickable(false);
                  new ValidatingLogin().execute();
              }
          });
          btnLinkToRegister.setOnClickListener(new Button.OnClickListener() {
              @Override
              public void onClick(View v) {
                  Intent i = new Intent(Login.this, RegisterActivity.class);
                  startActivity(i);
  
              }
          });
  
      }
          @Override
  
          public boolean onCreateOptionsMenu (Menu menu){
              getMenuInflater().inflate(R.menu.menu_login, menu);
              return true;
  
          }
  
  
          public class ValidatingLogin extends AsyncTask&lt;String, String, String&gt; {
              int success;
  
              protected void onPreExecute() {
                  super.onPreExecute();
                  pDialog = new ProgressDialog(Login.this);
                  pDialog.setMessage("Espere...");
                  pDialog.setIndeterminate(false);
                  pDialog.setCancelable(true);
                  pDialog.show();
  
              }
  
  
              protected String doInBackground(String... params) {
  
  
                  String  SendPersonal = emailEditText.getText().toString();
                  String SendPassword = PasswordEditText.getText().toString();
                  try {
                      List&lt;NameValuePair&gt; Params = new ArrayList &lt;NameValuePair&gt;();
                      Params.add(new BasicNameValuePair("Cod_Personal", SendPersonal));
                      Params.add(new BasicNameValuePair("Password", SendPassword));
  
  
                      JSONObject J = httpHandler.makeHttpRequest(url,"POST", Params);
  
                      success = J.getInt(TAG_SUCCESS);
                      if (success == 1) {
  
                          SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(Login.this);
                          SharedPreferences.Editor edit = prefs.edit();
                          edit.putString("Cod_Personal", SendPassword);
                          edit.commit();
  
                          Intent i = new Intent(Login.this, activity_actividad_principal.class);
                          finish();
                          startActivity(i);
                          return J.getString(TAG_MESSAGE);
  
                      } else {
  
  
                          return J.getString(TAG_MESSAGE);
                      }
  
  
                  } catch (JSONException e) {
                  }
                  return null;
              }
  
              protected void onPostExecute(String file_url) {
  
  
                  pDialog.dismiss();
                  if (file_url != null) {
                      Toast.makeText(getApplicationContext(), file_url, Toast.LENGTH_LONG).show();
                  } else {
  
                  }
              }
          }
  
  
      }
  </code></pre>
  
  <p>httphandler.java</p>
  
  <pre><code>public class HttpHandler{
  
          static InputStream is = null;
          static JSONObject Jobj = null;
          static String json="";
  
          //Constructor
          public HttpHandler(){
  
  
          }
  
  
      public JSONObject getJSONFromUrl(final String url){
  
          try{
              HttpClient httpClient = new DefaultHttpClient();
              HttpPost httpPost = new HttpPost(url);
  
              HttpResponse httpResponse = httpClient.execute(httpPost);
              HttpEntity httpEntity = httpResponse.getEntity();
              is = httpEntity.getContent();
          } catch (UnsupportedEncodingException e) {
  
          } catch (ClientProtocolException e) {
              e.printStackTrace();
          } catch (IOException e) {
              e.printStackTrace();
          }
  
          try{
              String line = null;
              BufferedReader reader = new BufferedReader(new InputStreamReader(is,"iso-8859-1"),8);
                  StringBuilder sb = new StringBuilder();
                      while((line = reader.readLine())!=null){
  
                          sb.append(line+"\n");
                      }
                  is.close();
              json= sb.toString();
  
          }catch (Exception e){
              Log.e("TAG",""+ e.toString());
          }
  
          try{
              Jobj = new JSONObject(json);
  
          }catch (JSONException e){
  
              Log.e("JSON Parser","Error Parsing Data" +e.toString());
          }
          return Jobj;
      }
  
  
      public JSONObject makeHttpRequest(String url,String method,List&lt;NameValuePair&gt; Params ){
              try{
                  if (method == "POST"){
                      HttpClient 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"){
  
                      HttpClient 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 {
              Jobj = new JSONObject(json);
          } catch (JSONException e) {
              Log.e("JSON Parser", "Error parsing data " + e.toString());
          }
  
          // return JSON String
          return Jobj;
  
  
  
      }
  
  }
  </code></pre>