Saturday, March 8, 2014

AsyncTask call webservice data reported null pointer


 package Telephone.test; 
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;
import org.xmlpull.v1.XmlPullParserException;
import android.app.Activity;
import android.os.AsyncTask;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.Toast;
public class TelephoneActivity extends Activity {
/ ** Called when the activity is first created. * /
private EditText usernameEditText;
private Button queryButton;
private ListView newslist;

public void onCreate (Bundle savedInstanceState) {
super.onCreate (savedInstanceState);
setContentView (R.layout.main);

usernameEditText = (EditText) findViewById (R.id.phone_sec);
final ListView newslist = (ListView) findViewById (R.id.listview);
queryButton = (Button) findViewById (R.id.query_btn);
queryButton.setOnClickListener (new OnClickListener () {
public void onClick (View v) {
String username = usernameEditText.getText () toString () trim ();..
PageTask task = new PageTask ();
task.execute (username);
}
});

newslist.setOnItemClickListener (new OnItemClickListener () {

@ SuppressWarnings ("unchecked")
public void onItemClick (AdapterView parent, View view, int position, long id) {
ListView listView = (ListView) parent;
HashMap map = (HashMap ) listView.getItemAtPosition (position);
String userid = map.get ("tasktitle");

. Toast.makeText (TelephoneActivity.this, userid + "", Toast.LENGTH_LONG) show ();
}
});
}

class PageTask extends AsyncTask >> {


@ Override
protected List > doInBackground (String. .. params) {

List > newslist2 = new ArrayList > ();

/ / Namespace
String nameSpace = "http://tempuri.org/";
/ / Method name
callString methodName = "GetTaskUserName";
/ / EndPoint
String endPoint = "http://192.168.0.100:8081/WebService.asmx";
/ / SOAP Action
String soapAction = "http://tempuri.org/GetTaskUserName";
/ / Specify WebService namespace and method name to call
SoapObject rpc = new SoapObject (nameSpace, methodName);
/ / Set the required incoming call WebService interface requires two parameters mobileCode, userId
rpc.addProperty ("username", params [0]);
/ / Generate method call WebService SOAP request message, and specify the version of SOAP
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope (SoapEnvelope.VER12);
envelope.bodyOut = rpc;
/ / Set whether the call is dotNet development WebService
envelope.dotNet = true;
envelope.setOutputSoapObject (rpc);
HttpTransportSE transport = new HttpTransportSE (endPoint);
transport.debug = true;
try {
transport.call (soapAction, envelope);
} Catch (IOException e) {
/ / TODO Auto-generated catch block
e.printStackTrace ();
} Catch (XmlPullParserException e) {
/ / TODO Auto-generated catch block
e.printStackTrace ();
}
/ / Get the returned data
SoapObject object = (SoapObject) envelope.bodyIn;
String result = object.getProperty (0) toString ();.
JSONObject demoJson = null;
try {
demoJson = new JSONObject (result);
} Catch (JSONException e) {
/ / TODO Auto-generated catch block
e.printStackTrace ();
}
JSONArray numberList = null;
try {
numberList = demoJson.getJSONArray ("T1");
} Catch (JSONException e) {
/ / TODO Auto-generated catch block
e.printStackTrace ();
}
for (int i = 0; i {
HashMap hashMap = new HashMap ();
try {
hashMap.put ("tasktitle", numberList.getJSONObject (i) getString ("TaskTitle").);
} Catch (JSONException e) {
/ / TODO Auto-generated catch block
e.printStackTrace ();
}
newslist2.add (hashMap);
}
return newslist2;
}

@ Override
protected void onPostExecute (List > result) {
SimpleAdapter newslistAdapter = new SimpleAdapter (TelephoneActivity.this, result, R.layout.item, new String [] {"tasktitle"}, new int [] {R.id.task_title});
newslist.setAdapter (newslistAdapter);
super.onPostExecute (result);
}
}



}
<-! Main posts under Banner (D4) -><-! Posts under the main text (D5) ->
Reply:
No one knows yet
Reply:
http://192.168.0.100:8081/ can visit?
Reply:
After connecting, see how much return response codes

No comments:

Post a Comment