package com.example.jim_m.myapplication; import android.os.Bundle; import android.support.design.widget.FloatingActionButton; import android.support.design.widget.Snackbar; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; import com.loopj.android.http.AsyncHttpClient; import com.loopj.android.http.AsyncHttpResponseHandler; import com.loopj.android.http.RequestParams; import org.json.JSONException; import org.json.JSONObject; import java.io.UnsupportedEncodingException; import cz.msebera.android.httpclient.Header; public class SearchActivity extends AppCompatActivity { EditText Last_Name; Button Search; String last_name=""; TextView res; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_search); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); Search= (Button)findViewById(R.id.btnSearch); Last_Name= (EditText)findViewById(R.id.editLastName); res= (TextView)findViewById(R.id.textResult); } public void Search(View view){ last_name = Last_Name.getText().toString(); RequestParams params = new RequestParams(); params.put("last_name", last_name); invokeWS(params); } public void invokeWS(RequestParams params) { AsyncHttpClient client = new AsyncHttpClient(); client.get("http://employeesservice.azurewebsites.net/api/employees/GetemployeeByName/"+last_name, new AsyncHttpResponseHandler() { @Override public void onStart() { // called before request is started String test="a"; } @Override public void onSuccess(int statusCode, Header[] headers, byte[] response) { try { String str = new String(response, "UTF-8"); // JSON Object JSONObject obj = new JSONObject(str); // When the JSON response has status boolean value assigned with true res.setText("Result Found : "+System.getProperty("line.separator")+ "First Name: "+obj.get("First_Name")+ System.getProperty("line.separator")+ "Last Name: "+obj.get("Last_Name")+ System.getProperty("line.separator")+ "Address: "+ ( !obj.isNull("Address") ? obj.get("Address") : "")+ System.getProperty("line.separator")+ "BirthDate: "+obj.get("birthdate")); } catch (JSONException e) { // TODO Auto-generated catch block Toast.makeText(getApplicationContext(), "Error Occured [Server's JSON response might be invalid]!", Toast.LENGTH_LONG).show(); e.printStackTrace(); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } } @Override public void onFailure(int statusCode, Header[] headers, byte[] errorResponse, Throwable e) { // called when response HTTP status is "4XX" (eg. 401, 403, 404) res.setText("No results"); } @Override public void onRetry(int retryNo) { // called when request is retried String test="a"; } }); } }