CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: con ben Thanks ricevuti nelle ultime 24 ore
Utente della settimana: megthebest con ben 7 Thanks ricevuti negli ultimi sette giorni
Utente del mese: megthebest con ben 39 Thanks ricevuti nell'ultimo mese

Pagina 1 di 3 123 ultimoultimo
Ultima pagina
Visualizzazione dei risultati da 1 a 10 su 22
Discussione:

Raggiungere Web Service

Se questa discussione ti è stata utile, ti preghiamo di lasciare un messaggio di feedback in modo che possa essere preziosa in futuro anche per altri utenti come te!
  1. #1
    Androidiano


    Registrato dal
    Nov 2011
    Località
    Ivrea
    Messaggi
    133

    Ringraziamenti
    7
    Ringraziato 8 volte in 8 Posts
    Predefinito

    Raggiungere Web Service

    Ciao a tutti,

    ho cercato in altre discussioni ma non ho trovato un esempio di collegamento ad un web service con android.
    Qualcuno può mostrarmi in esempio di codice di collegamento ad un web service?
    Uso eclipse..

    grazie
    Ultima modifica di genty; 24-11-11 alle 12:12

  2.  
  3. #2
    Senior Droid


    Registrato dal
    May 2010
    Località
    Rivoli
    Messaggi
    426

    Ringraziamenti
    6
    Ringraziato 48 volte in 47 Posts
    Predefinito

    Innanzituto ti conviene verificare che ci sia
    - un collegamento dati (linea telefonica) attivo
    - oppure un collegamento WiFi attivo
    Per fare quanto sopra, ricordati di abilitare nel file AndroidManifest.xml:
    codice:
        <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
        <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    Poi, come fai il trasferimento dati? Xml, come faccio io?
    Ti conviene usare le classi
    codice:
    	private ConnectivityManager conn_manager;
    	private HttpClient http_client;
    	private HttpPost http_post;
    	private HttpResponse http_response;
    ...e questo è un esempio di codice:
    codice:
    public void onCreate(Bundle savedInstanceState) {
    	conn_manager = (ConnectivityManager)getSystemService(getApplicationContext().CONNECTIVITY_SERVICE);
    	http_client = new DefaultHttpClient();
    }
    
    public void Connetti_A_WebService() {
    		// variabili che mi serviranno tra poco
    		String risultato = "";
    		String errore = "";
    		
    		// devo creare l'Xml da inviare al server
    		String xml_utente = "<?xml version=\"1.0\" encoding=\"utf-8\"?>";
    		xml_utente += "<utente>";
    		xml_utente += "<login>" + login + "</login>";
    		xml_utente += "<password>" + password + "</password>";
    		xml_utente += "</utente>";
    
    		// proviamo l'invio
    		try {
    			http_post = new HttpPost( "http://www.microsoft.com/TheCopacabanaMan/WebService/login_to_sharepoint.aspx");
    			StringEntity string_entity = new StringEntity(xml_utente, HTTP.UTF_8);
    			string_entity.setContentType("text/xml");
    			http_post.setEntity(string_entity);
    			
    			http_response = http_client.execute(http_post);
    			HttpEntity res_Entity = http_response.getEntity();
    			risultato = EntityUtils.toString(res_Entity );
    		}
    		catch(Exception ex) {
    		  // managgia! abbiamo ottenuto un errore!
    			errore = ex.getMessage() + "\r\n" + risultato;
    		}
    }
    ...ricordati di NON usare i miei login+password


    ...e per permettere al tuo dispositivo di comunicare via internet, ricordati di abilitare nel file AndroidManifest.xml:
    codice:
    	<uses-permission android:name="android.permission.INTERNET" />
    Quanto mi devi per la consulenza? Una cioccolata calda? Accettata!
    Ultima modifica di TheCopacabanaMan; 24-11-11 alle 16:15

  4. #3
    Androidiano


    Registrato dal
    Nov 2011
    Località
    Ivrea
    Messaggi
    133

    Ringraziamenti
    7
    Ringraziato 8 volte in 8 Posts
    Predefinito

    Non è meglio una buona birra??

    Il tuo esempio funziona ma io voglio passare dal soap per varie ragioni come che dall'altra parte mi aspettano web service .net.
    Per oggi però non ne ho più.. Domani mi metto sotto e ti aggiorno. Tu non lo usi il soap?

  5. #4
    Senior Droid


    Registrato dal
    May 2010
    Località
    Rivoli
    Messaggi
    426

    Ringraziamenti
    6
    Ringraziato 48 volte in 47 Posts
    Predefinito

    Quote Originariamente inviato da genty Visualizza il messaggio
    Tu non lo usi il soap?
    Io sono povero, faccio tutto a manina...

  6. #5
    Androidiano


    Registrato dal
    Nov 2011
    Località
    Ivrea
    Messaggi
    133

    Ringraziamenti
    7
    Ringraziato 8 volte in 8 Posts
    Predefinito

    Ti è mai uscito quest'errore?


    expected: START_TAG {http://schemas.xmlsoap.org/soap/envelope/}Envelope (position:START_TAG <head>@1.6 in java.io.InputStreamReader

  7. #6
    Senior Droid


    Registrato dal
    May 2010
    Località
    Rivoli
    Messaggi
    426

    Ringraziamenti
    6
    Ringraziato 48 volte in 47 Posts
    Predefinito

    Stai usando un WebServer scritto in Php?

    In alternativa, sei sicuro che il file Xml sia ben formattato?

  8. #7
    Androidiano


    Registrato dal
    Nov 2011
    Località
    Ivrea
    Messaggi
    133

    Ringraziamenti
    7
    Ringraziato 8 volte in 8 Posts
    Predefinito

    eh ti ho risp ma devo essere approvato dal moderatore..
    cmq no e in aspx..

  9. #8
    Administrator L'avatar di Andrea


    Registrato dal
    Nov 2008
    Messaggi
    3,368
    Smartphone
    Nexus S, myTouch Slide 4g

    Ringraziamenti
    143
    Ringraziato 880 volte in 323 Posts
    Predefinito

    Se fornissi un esempio di risposta forse saremmo in grado di aiutarti meglio.

    Twitter @veke87

  10. #9
    Androidiano


    Registrato dal
    Nov 2011
    Località
    Ivrea
    Messaggi
    133

    Ringraziamenti
    7
    Ringraziato 8 volte in 8 Posts
    Predefinito

    Ciao anche a te Andrea.

    La risposta del web service e quindi l'errore che mi da è proprio quello scritto in precedenza:

    expected: START_TAG {http://schemas.xmlsoap.org/soap/envelope/}Envelope (position:START_TAG <head>@1.6 in java.io.InputStreamReader




    Non è che per caso le classi 'web' devono star in un altro posto? Credo proprio di no...
    In allegato c'è il mio project se gentilmente provate a caricarlo..
    C'è solo una classe e il main.xml.
    Il web service se lo provate dal browser risponde benissimo.
    passando il cap della città restituisce il tempo, umidità e altre cose..

    Non riesco proprio a capire cosa sbaglio, sono in crisi.
    La libreria che ho scaricato è la ksoap2 e l'ho messa come external jar nel project.

    Vi inserirei il codice come ha fatto copacabanaMan in una finestra, ma davvero è il primo forum in cui mi iscrivo e non so neanche come si faccia a inserire il testo così.. mi dai due dritte anche per questo così evito gli allegati la prox volta?

    Posso darvi altre info??


    Grazie mille
    File allegati

  11. #10
    Senior Droid


    Registrato dal
    May 2010
    Località
    Rivoli
    Messaggi
    426

    Ringraziamenti
    6
    Ringraziato 48 volte in 47 Posts
    Predefinito

    Non saprei che risponderti.

    Ho compilato il tuo codice, e ottengo un errore diverso.
    Alla linea
    codice:
     androidHttpTransport.call(SOAP_ACTION, envelope);
    ottengo l'eccezione
    java.net.SocketException: Permission denied

    Andrea, che ne pensi?
    ...Andrea? Andreeeee-aaaaaaaaaahhhhh!
    (si, quello dorme, a quest'ora...)

Pagina 1 di 3 123 ultimoultimo
Ultima pagina

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire risposte
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Torna su
Privacy Policy