0

我是网络服务的新手。任何人都可以解释如何使用 apache axis2(或任何其他工具)从 WSDL 文件生成 java 类以及如何在我们的 android 应用程序中使用这些类来调用 web 服务方法,并举例说明......

4

1 回答 1

0

下载并使用这个库:ksoap2-android-assembly-3.0.0-jar-with-dependencies.jar

然后使用此方法从 Web 服务调用方法:

public String method(String input)
{
    final String NAMESPACE = "http://tempuri.org/";
    final String SOAP_ACTION = "http://tempuri.org/IService/";
    final String URL = "http://...Service.svc";
    final String METHOD_NAME = "NAME OF THE METHOD";

    try
    {
        SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);

        //Repeat this line for each input parameter
        request.addProperty("NAME OF THE INPUT", input);

        SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
        envelope.dotNet = true;
        envelope.setOutputSoapObject(request);
        HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
        androidHttpTransport.call(SOAP_ACTION + METHOD_NAME, envelope);
        return envelope.getResponse().toString();
    }
    catch(Exception e)
    {
        return "";
    }
}

注意:不能在 GUI 线程上调用此方法。

于 2013-05-16T07:15:59.530 回答