2016-08-01 15 views
1

マテリアルドキュメント番号を使用しないで材料を取得するには、アンドロイドを使用してSAP Webサービスに電話する必要があります。私はksoap2ライブラリを使用しています。問題は私が正確に何をしていないのですかNAMESPACE、SOAP_ACTIONを意味します。私は何の反応も得られない。アンドロイドからSAP Webサービスへの呼び出し

METHOD_NAME = "ZSL_GET_MAT_DOC";

URL = "http://SL_S:**** @ AP.vv.lk:8000/sap/bc/srt/rfc/sap/zsl_get_mat_doc/110/zsl_get_mat_doc/zl_web_svr4"。

これは私の方法です。

class RetrieveFeedTask extends AsyncTask<String, Void, String> { 
     @Override 
     protected String doInBackground(String... strings) { 

      // Create SOAP request 
      SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME); 
      request.addProperty("Materialdocument", "0407000147"); 

      SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); 
      envelope.setOutputSoapObject(request); 
      HttpTransportSE androidHttpTransport = new HttpTransportSE(URL); 
      try { 
       androidHttpTransport.call(SOAP_ACTION, envelope); 

       // Get response from envelope 
       Object result = envelope.getResponse(); 

       // Display result 
       Toast.makeText(getContext(), result.toString(), Toast.LENGTH_LONG).show(); 

      } catch (IOException e) { 
       e.printStackTrace(); 
      } catch (XmlPullParserException e) { 
       e.printStackTrace(); 
      } 

      return null; 
     } 
    } 

答えて

0

De Namespaceは、SOAP WSDLの名前空間です。これはおそらく

urn:sap-com:document:sap:rfc:functionsです。

アクションはWSDLでも言及されています。 SAP RFCを使用する場合、これはRFC要求の ""という名前になります。したがって、これはおそらく ZSL_GET_MAT_DOCRequestになります。

これが役に立ちます。

関連する問題