ほとんどのWeb検索では、実際に問題を解決することはできません。解決策は、特別に書きました。
作成 MyAndroidHttpTransportクラス、
com.example.omhandroid.libのためのパッケージ変更を、
インポートorg.ksoap2.transport.HttpTransportSEを、
インポートorg.ksoap2.transport.ServiceConnectionを、
インポートにjava.io.IOExceptionを、
インポートjava.net.SocketExceptionが、
パブリッククラスをMyAndroidHttpTransport 拡張HttpTransportSE {
プライベートINT タイムアウト= 600000; //デフォルトのタイムアウトは、10の* 60秒であるINTプライベートReadTimeout = 600000; //デフォルトのタイムアウトは、10の* 60秒である公共MyAndroidHttpTransport(文字列のURL){ スーパー(URL); } 公共MyAndroidHttpTransport(文字列URL、タイムアウトINT){ スーパー(URL); この。
タイムアウト=タイムアウト。
}
公共ServiceConnection getServiceConnectionは()にIOExceptionが{スロー
(新しいorg.ksoap2.transport.ServiceConnectionSEを返す。このプロキシ、このURL、このタイムアウト、このreadTimeout)。
}
}
调用如下。
//は石鹸、石鹸のコールWebサービスメソッド呼び出し情報を生成し、バージョン指定
SoapSerializationEnvelopeエンベロープ= 新しい新しいSoapSerializationEnvelope(たSOAPEnvelope。VER11)を、
過去ログ開発Webサービスを起動するかどうか//
封筒。過去ログ= trueに、
envelope.setOutputSoapObject(要求);
MyAndroidHttpTransport httpTransport = 新しい新しい(MyAndroidHttpTransport ; SOAP_ADDRESSを)
。httpTransport デバッグ= ; trueに
{試み
httpTransport.call(WSDL_TARGET_NAMESPACE + OPERATION_NAME、エンベロープ);
envelope.getResponse応答=を()オブジェクト、
(response.toStringを返す);
} キャッチ(例外exception){
例外。 printStackTrace();
戻り値「」;
}
を使用しても安全、効果的な発見