2

ksoap を使用して単純な Web サービスを呼び出そうとしています。このビデオに従って、始めようとしました。エンベロープで "getResponse()" を呼び出すと、文字列 "Error" が返されます。スローされる例外やその他の詳細はありません。ローカル マシンにセットアップした単純な Web サービスに正常に接続しました。これは、職場でプロキシ サーバーの背後にいることに関連している可能性がありますか? 私のコードは以下の通りです:

String SOAP_ACTION="http://tempuri.org/CelsiusToFahrenheit";
String METHOD_NAME = "CelsiusToFahrenheit";
String NAMESPACE = "http://tempuri.org";
String URL = "http://w3schools.com/webservices/tempconvert.asmx";

SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);
PropertyInfo pi = new PropertyInfo();
pi.setName("Celsius");
pi.setValue("32");
request.addProperty(pi);

SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet = true;
envelope.setOutputSoapObject(request);

HttpTransportSE aht = new HttpTransportSE(URL);

try
{
    aht.call(SOAP_ACTION, envelope);
    SoapPrimitive results = (SoapPrimitive)envelope.getResponse();
}
catch (Exception e)
{
    e.printStackTrace();
}
4

2 に答える 2

1

名前空間の後に「/」がありませんでした。それを理解するのに時間がかかりすぎました。

于 2010-05-06T15:15:37.160 に答える