1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109
|
package android.Web.Service;
import java.io.InputStream;
import java.io.InputStreamReader;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;
import org.apache.http.protocol.HTTP;
import android.app.Activity;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
public class TestWebServiceActivity extends Activity implements OnClickListener{
/** Called when the activity is first created. */
private static String URL_WS="http://192.168.1.3:8080/trunk/resources/entity.media/";
private ProgressDialog dialog;
private Handler mHandler;
private String resultat;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
((Button)findViewById(R.id.btn_Appel)).setOnClickListener(this);
dialog = new ProgressDialog(this);
dialog.setMessage("Appel au webservice en cours...");
dialog.setCancelable(true);
mHandler = new Handler() {
public void handleMessage(Message msg) {
switch(msg.what){
case 1:
dialog.dismiss();
((TextView)findViewById(R.id.resultat)).setText(resultat);
break;
}
}
};
}
public void onClick(View v) {
switch(v.getId())
{
case R.id.btn_Appel:
dialog.show();
new Thread(new Runnable(){
public void run() {
resultat=rechercheViaWebService(Long.parseLong(((TextView)findViewById(R.id.input_id)).getText().toString()));
mHandler.sendEmptyMessage(1);
}
}).start();
break;
}
}
private String rechercheViaWebService(Long parseDouble) {
try {
HttpParams httpParameters = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParameters, 30000);
HttpConnectionParams.setSoTimeout(httpParameters, 50000);
HttpClient httpclient = new DefaultHttpClient(httpParameters);
HttpGet httpget = new HttpGet(URL_WS+parseDouble);
httpget.setHeader("Content-Type", "application/xml");
HttpResponse response = httpclient.execute(httpget);
InputStream is=response.getEntity().getContent();
InputStreamReader reader = new InputStreamReader(is,HTTP.UTF_8);
char[] buf = new char [4096];
int count;
StringBuilder sb=new StringBuilder();
while ((count = reader.read (buf, 0, buf.length)) != -1)
sb.append(buf, 0, count);
is.close();
String res=sb.toString();
return res;
} catch (Exception e) {
Log.i("rest", e.toString());
return "Erreur lors de l'appel au webservice";
}
};
} |