2012-05-02 14 views
0

私はアンドロイドを初めて使っています。私のアプリケーションでは、(SOAP_Action、OperationName、WSDL_TARGET_NAMESPACE、SOAP_ADDRESS)について、アンドロイドのWebサービス

を理解できないという点で、SOAP Webサービスを呼び出そうとしました。以下は私のフルコードです

public void onCreate(Bundle savedInstanceState) 
{ 
super.onCreate(savedInstanceState); 

TextView textView = new TextView(this); 

setContentView(textView); 

SoapObject request = new SoapObject(WSDL_TARGET_NAMESPACE, 
OPERATION_NAME); 

SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
SoapEnvelope.VER11); 
envelope.dotNet = true; 
System.out.println("subbu="+request); 
envelope.setOutputSoapObject(request); 

HttpTransportSE httpTransport = new HttpTransportSE(SOAP_ADDRESS); 
try 
{ 
httpTransport.call(SOAP_ACTION, envelope); 
Object response = envelope.getResponse(); 
textView.setText(response.toString()); 
} 
catch (Exception exception) 
{ 
textView.setText(exception.toString()); 
} 
} 
} 

誰もがその目的を説明することができます。私はアイデアを得ることができるいくつかのリンクを与えます。

+0

最初にあなたを助けるために彼らの努力のために人々に信用を与えると、[答えを受け入れる]してください(のhttp://meta.stackexchange .com/a/5235/164138)にお問い合わせください。あなたは一つの答えを受け入れていません!第二に、あなたの質問はあまり明確ではありません。正確に何を理解していないのですか? – THelper

+0

先ほどの質問の回答を受け入れる。 –

+0

こんにちはTHelpeさん、Mohit Sharma申し訳ありませんが、私はこのスタックオーバーフローの新しいですので、私はこれらのルールを知らなかった.Awayは将来受け入れます。 – subburaj

答えて

0

SOAP_ACTION/NAMESPACEとMETHODSは、対象のWebサービスのWSDLファイルにあります。ここで

は、WebサービスにSOAPリクエストを送信するためのサンプルコードです:すべての

public class SoapRequest { 
private static final String SOAP_ACTION = "xxx"; 
private static final String METHOD_NAME = "xxx"; 
private static final String NAMESPACE = "xxx"; 
private static final String URL = "url of the webservice"; 

public static SoapObject soap() throws IOException, XmlPullParserException { 
    SoapObject request = new SoapObject (NAMESPACE, METHOD_NAME); 

/* Here you can add properties to your requests */ 
    PropertyInfo pi1 = new PropertyInfo(); 
    pi1.name = "xxx"; 
    pi1.type = String.class; 
    request.addProperty(pi1, "xxx"); 

    SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); 
    envelope.setOutputSoapObject(request); 
    HttpTransportSE androidHttpTransport = new HttpTransportSE(URL); 
    androidHttpTransport.debug = true; 
    androidHttpTransport.call(SOAP_ACTION, envelope); 
    SoapObject soapResult = (SoapObject) envelope.bodyIn; 
    return soapResult; 
} 
関連する問題