2013-08-14 5 views
0

J'ai été fourni par un webservice de savon qui a une wsdl avec soapaction = ""Savon webservice ne pas donner une réponse

<wsdl:binding name="SimpleSearchRequestSoapBinding" type="impl:SimpleSearchRequest"> 
<wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> 
<wsdl:operation name="getSearchResults"><wsdlsoap:operation **soapAction=""**/> 
<wsdl:input name="getSearchResultsRequest"> 
<wsdlsoap:body use="literal"/></wsdl:input> 
<wsdl:output name="getSearchResultsResponse"> 
<wsdlsoap:body use="literal"/></wsdl:output> 
</wsdl:operation> 

Frapper le webservice comme ceci:

SoapObject request = new SoapObject(OKMConstants.NAMESPACE, OKMConstants.OPERATION_NAME);   
      request.addProperty("searchParam","faq"); 

      SoapSerializationEnvelope soapEnvelope = new SoapSerializationEnvelope(SoapEnvelope.VER12); 
      soapEnvelope.setOutputSoapObject(request); 

      HttpTransportSE httpTransport = new HttpTransportSE(OKMConstants.url); 

         httpTransport.call("", soapEnvelope);   
     // Object response = soapEnvelope.getResponse(); 

      SoapObject result = (SoapObject)soapEnvelope.bodyIn; 

Mais son lancement exception:

org.xmlpull.v1.XmlPullParserException: Expected a quoted string (position:DOCDECL @1:62 in [email protected]) 
+1

problème de message XML à partir des regards de celui-ci. Pourquoi ne considérez-vous pas le message d'exception comme un indice? – duffymo

+0

Est-ce du côté du service Web (serveur) ou du côté client? Je pense que c'est dû à la soapaction vide? – Varun

+0

Le service indique à votre client qu'il a envoyé un message incorrect. – duffymo

Répondre

0

httpTransport.call (SOAPACTION, soapEnvelope);

pense que cette ligne peut être le problème, essayez plutôt d'utiliser soapAction dans la méthode d'appel.

+0

De l'action de savon wsdl est vide – Varun

0

Vous devez passer soapAction null (il sera défini comme une chaîne vide par ksoap2) ou passer une chaîne vide avec des guillemets: httpTransport.call("\"\"", soapEnvelope);

Questions connexes