我尝试制作一个简单的应用程序来获取一个 web 服务的字符串,我已经下载了 ksopa2 包,制作精良和正确的数据(在 Internet 教程上测试),我得到下面的错误,你可以知道,可能是?非常感谢!
应用:
public class MainActivity extends Activity {
private static final String SOAP_ACTION = "http://tempuri.org/devuelveString"; //Variables
private static final String METHOD_NAME = "devuelveString";
private static final String NAMESPACE = "http://tempuri.org/";
private static final String URL = "http://localhost:52335/Service1.asmx";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button boton = (Button) findViewById(R.id.Bboton);
boton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
InvocarWs(); //call the method
}
});
}
public void InvocarWs() {
System.out.println("llama al metodo");
try {
SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);
final SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
SoapEnvelope.VER11); // utilizar la version que
// corresponda:11 o 12
envelope.dotNet = true; // para WS ASMX, sólo si fue construido con
// .Net
envelope.setOutputSoapObject(request);
HttpTransportSE transporte = new HttpTransportSE(URL);
transporte.call(SOAP_ACTION, envelope);
SoapPrimitive resultado = (SoapPrimitive) envelope.getResponse();
System.out.println("" + resultado.toString());
} catch (Exception e) {
System.out.println("catch");
}
}
}
错误日志vcat
04-26 08:03:08.731: E/AndroidRuntime(536): FATAL EXCEPTION: main
04-26 08:03:08.731: E/AndroidRuntime(536): java.lang.NoClassDefFoundError: org.ksoap2.serialization.SoapObject
04-26 08:03:08.731: E/AndroidRuntime(536): at com.example.prueba.Conexion.InvocarWs(Conexion.java:24)
04-26 08:03:08.731: E/AndroidRuntime(536): at com.example.prueba.MainActivity$1.onClick(MainActivity.java:25)
04-26 08:03:08.731: E/AndroidRuntime(536): at android.view.View.performClick(View.java:2485)
04-26 08:03:08.731: E/AndroidRuntime(536): at android.view.View$PerformClick.run(View.java:9080)
04-26 08:03:08.731: E/AndroidRuntime(536): at android.os.Handler.handleCallback(Handler.java:587)
04-26 08:03:08.731: E/AndroidRuntime(536): at android.os.Handler.dispatchMessage(Handler.java:92)
04-26 08:03:08.731: E/AndroidRuntime(536): at android.os.Looper.loop(Looper.java:123)
04-26 08:03:08.731: E/AndroidRuntime(536): at android.app.ActivityThread.main(ActivityThread.java:3683)
04-26 08:03:08.731: E/AndroidRuntime(536): at java.lang.reflect.Method.invokeNative(Native Method)
04-26 08:03:08.731: E/AndroidRuntime(536): at java.lang.reflect.Method.invoke(Method.java:507)
04-26 08:03:08.731: E/AndroidRuntime(536): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
04-26 08:03:08.731: E/AndroidRuntime(536): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
04-26 08:03:08.731: E/AndroidRuntime(536): at dalvik.system.NativeStart.main(Native Method)