1

ksoap2 を使用して .net c# Web サービスを呼び出すという点で、Android アプリケーションを作成しています。私の Android アプリは、Oracle データベースからユーザーの詳細を抽出し、文字列に連結された応答を返す Web サービスに文字列を送信します。

私は通常、応答を正しく取得できました。その後、突然、サーバーが次のエラーをスローし始めました。

なぜこれが起こっているのかわかりません。場合によっては、同じコードを変更せずに突然正しい応答が得られることがあります。私の呼び出し方法は次のとおりです

import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;


public class CallSoap 
{
    public final String SOAP_ACTION = "http://tempuri.org/"+method_name;

    public  final String OPERATION_NAME = method_name;

    public  final String WSDL_TARGET_NAMESPACE = "http://tempuri.org/";

    public  final String SOAP_ADDRESS = "url";

    public CallSoap(){  }

    public String Call(String a)
    {
        SoapObject request = 
            new SoapObject(WSDL_TARGET_NAMESPACE,OPERATION_NAME);

        request.addProperty("data",a);

        SoapSerializationEnvelope envelope = 
            new SoapSerializationEnvelope(SoapEnvelope.VER11);

        envelope.dotNet = true;

        envelope.setOutputSoapObject(request);

        HttpTransportSE httpTransport = 
            new HttpTransportSE(SOAP_ADDRESS);

        Object response=null;
        try 
        {
            httpTransport.call(SOAP_ACTION, envelope);

            response = envelope.getResponse();
        }
        catch (Exception exception)
        {
            response=exception.toString();
        }

        return response.toString();
    }
}

ただし、同じ Web サービスが Web ブラウザー アプリケーションから適切に実行されます。

私はすべてのフォーラムの可能な答えを検索し、最終的にここでこの質問をしました。私はこれらすべてに慣れていないため、説明が明確でなくて申し訳ありません。

ありがとう

4

1 に答える 1

0

問題の原因は Android アプリとは関係ありません。これは純粋に C# Web サービスにあります。

Web ブラウザでは発生せず、特定の条件下でのみ発生するバグである可能性があります。それにもかかわらず、問題はサーバー側にあります。

Web サービスを構築した場合は、サービスに関する十分な情報を含む新しい質問を開始します。そうでない場合は、Web サービスの所有者に委任する必要があります。

于 2013-01-06T19:50:48.453 に答える