2010-04-08 9 views
3

J'essaye de créer un client de service Web pour l'androïde mais je suis bloqué vraiment mal Attached est mon code et WSDL dossier. S'il vous plaît aiderClient Web SOAP sur Android

/* 
* To change this template, choose Tools | Templates 
* and open the template in the editor. 
*/ 

package org.me.androidapplication1; 

import android.app.Activity; 

import android.os.Bundle; 

import android.widget.TextView; 

import java.io.IOException; 

import java.util.logging.Level; 

import java.util.logging.Logger; 

import org.ksoap2.SoapEnvelope; 

import org.ksoap2.serialization.SoapObject; 

import org.ksoap2.serialization.SoapPrimitive; 

import org.ksoap2.serialization.SoapSerializationEnvelope; 

import org.ksoap2.transport.AndroidHttpTransport; 

import org.xmlpull.v1.XmlPullParserException; 


/** 
* 
* @author bansal 
*/ 
public class MainActivity extends Activity { 



private String SOAP_ACTION = "http://src/getNews"; 

private String METHOD_NAME = "getNews"; 

private String NAMESPACE = "http://src/"; 

private static final String URL ="http://128.205.201.202:8080/RssService 
/RssServiceService?WSDL"; 

/** Called when the activity is first created. */ 
@Override 

public void onCreate(Bundle icicle) { 

super.onCreate(icicle); 


TextView tv = new TextView(this); 

SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME); 

request.addProperty("ticker","NASDAQ:INFY"); 

SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); 

envelope.setOutputSoapObject(request); 

AndroidHttpTransport androidHttpTransport = new AndroidHttpTransport(URL); 

try { 

androidHttpTransport.call(SOAP_ACTION, envelope); 

SoapPrimitive p = (SoapPrimitive) envelope.getResponse(); 

tv.setText("Response " + p); 


} catch (Exception ex) { 


ex.printStackTrace(); 

} 


setContentView(tv); 


// ToDo add your GUI initialization code here 

} 

} 

Merci

+0

Je n'étais pas sûr que les valeurs de Namespace, URL et SOAP_ACTION sont correctes. Pouvez-vous regarder mon WSDL et dire si elles sont correctes - - - - - –

Répondre

0

Déplacer l'appel de service Web de onCreate et de le faire dans un autre thread. Vous ne voulez rien d'intensif dans onCreate ou il va raccrocher la création et l'affichage de l'activité.

+0

Je ne suis pas sûr si t Les valeurs des variables sont correctes. Pouvez-vous vérifier si elles sont basées sur mon WSDL - - "de getNews">

0

BANSAL

ce service Web: http://128.205.201.202:8080/RssService /RssServiceService WSDL

j'essayer de voir le service Web à l'aide de l'outil d'interface utilisateur SOAP mais obtenir Message d'erreur indiquant: Erreur lors de l'importation du fichier WSDL

alors vous avez juste besoin d'essayer un autre lien qui fonctionne. & Découvrez d'abord l'outil SOAP UI. & Puis, après le changement selon le code ur. apporter des modifications au nom de la méthode. Exécutez-le à nouveau.

Vous pouvez utiliser le fichier WSDL en cours d'exécution: http://ws.oag.com/OAGFlightStatusInformation.asmx?WSDL pour tester votre code. Cela pourrait fonctionner pour vous.