我是android的新手,我正在尝试一个Web服务的例子。 我用过ksoap2 lib。 我按照一个视频输入以下代码:
package example.web;
import android.R.anim;
import android.app.Activity;
import android.os.Bundle;
import org.ksoap2.*;
import org.ksoap2.serialization.*;
import org.ksoap2.transport.*;
import android.widget.TextView;
public class First extends Activity {
/** Called when the activity is first created. */
TextView tv;
private static final String SOAP_ACTION="http://tempuri.org/CelsiusToFahrenheit";
private static final String METHOD_NAME="CelsiusToFahrenheit";
private static final String NAMESPACE="http://tempuri.org/";
private static final String URL="http://www.w3schools.com/webservices/tempconvert.asmx";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
tv = (TextView) findViewById(R.id.textView1);
// creating the soap request and all its paramaters
SoapObject request= new SoapObject(NAMESPACE, METHOD_NAME);
request.addProperty("Celsius","32");// hardcoding some random value
//we can also take in a value in a var and pass it there
//set soap envelope,set to dotnet and set output
SoapSerializationEnvelope soapEnvelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
soapEnvelope.dotNet=true;
soapEnvelope.setOutputSoapObject(request);
HttpTransportSE obj = new HttpTransportSE(URL);
//to make call to server
try {
obj.call(SOAP_ACTION,soapEnvelope);// in out parameter
SoapPrimitive resultString=(SoapPrimitive)SoapEnvelope.getResponse();
tv.setText("Status : " + resultString);
}
catch(Exception e) {
e.printStackTrace();
}
}
}
SoapPrimitive resultString=(SoapPrimitive)SoapEnvelope.getResponse();
在上面一行,我在getResponse();
上遇到错误
请有人帮助我。
答案 0 :(得分:-1)
尝试将您的 SoapEnvelope
更改为 soapEnvelope
并获取结果 SoapObject
< strong>而不是 SoapPrimitive
try
{
obj.call(SOAP_ACTION,soapEnvelope);// in out parameter
SoapObject resultString = (SoapObject) soapEnvelope.getResponse();
tv.setText("Status : " + resultString);
}
catch (Exception e)
{
SoapObject resultString = (SoapObject)soapEnvelope.bodyIn;
}
希望它可以帮助你!!