IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

API standards et tierces Android Discussion :

Récupération des données via REST Web services


Sujet :

API standards et tierces Android

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2011
    Messages : 88
    Points : 64
    Points
    64
    Par défaut Récupération des données via REST Web services
    Bonjour à tous,

    Comme dit dans le titre j'aimerais récupérer des données de plusieurs campus (pour commencer je n'en prends qu'un seul) à partir de la méthode Http GET sur un site que j'ai crée en local, depuis mon app Android.

    Voici une méthode que j'ai crée dans cet objectif:

    classe WebCampus:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    public Campus convertToCampus(JSONObject object) throws JSONException{
     
    		webManager = new WebServiceManager();
    		webManager.sendGetRequest("http://10.0.2.2:8080/NoteTonSTA/rest/campuses/1");//tester url
     
    		campus = new Campus();
     
    		//récupération des attributs json de l'url
    		try {
    			campus.setName(object.getString("name"));
    			campus.setId(object.getLong("id"));
     
    		} catch (Exception e) {
    			String tag = "WebCampusError";
    			Log.e(tag , "impossible de parser les attributs: "+e.getMessage(),e);
    		}
     
    		return campus;//on retourne un objet campus
     
    	}
    Les données à récupérer sont de cette forme (en JSON):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    {"id":"1","name":"Lyon"}
    Voici mon activity:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    package com.supinfo.notetonsta;
     
    import org.json.JSONException;
    import org.json.JSONObject;
     
    import com.supinfo.notetonsta.model.Campus;
    import com.supinfo.notetonsta.web.WebCampus;
     
    import android.app.Activity;
    import android.os.Bundle;
    import android.widget.LinearLayout;
    import android.widget.ListAdapter;
    import android.widget.ListView;
     
    //main activity
    public class NoteTonSTA2Activity extends Activity {
        /** Called when the activity is first created. */
     
    	Campus campus;
     
    	LinearLayout mainLayout;//layout principal
    	ListView listView;//listView du main.xml
    	ListAdapter la;
     
    	JSONObject object;
    	WebCampus webCampus;
     
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
     
            object = new JSONObject();
            webCampus = new WebCampus();
     
            try {
            	//on va lister tous les campus dans cette activity
    			campus = webCampus.convertToCampus(object);
     
     
    		} catch (JSONException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
     
        }
     
        public void addCampus(){
     
        }
     
    }
    Et pour finir mon WebServiceManager pour la connexion:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    package com.supinfo.notetonsta.util;
     
    import java.net.URI;
     
    import org.apache.http.HttpResponse;
    import org.apache.http.client.HttpClient;
    import org.apache.http.client.methods.HttpGet;
    import org.apache.http.impl.client.DefaultHttpClient;
    import org.apache.http.util.EntityUtils;
     
    import android.util.Log;
     
    public class WebServiceManager {
     
    	private String result;
    	private HttpClient httpClient;
    	private HttpGet httpGet;
    	private URI uri;
     
    	public String sendGetRequest(String address){
     
    		result = null;
     
    		try {
    			httpClient = new DefaultHttpClient();
    			httpGet = new HttpGet();
     
    			uri = new URI(address);
    			httpGet.setURI(uri);
     
    			HttpResponse response = httpClient.execute(httpGet);//on execute la requête http
     
    			result = EntityUtils.toString(response.getEntity());
     
    		} catch (Exception e) {
    			Log.e(address, "Connexion impossible, problème de droit ou de port deja utilise: "+e.getMessage(),e);
    		}
     
    		return result;
     
    	}
     
    	public WebServiceManager() {
     
    	}
     
    }
    Le problème c'est que je lève l'exception suivante (logs):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    03-28 03:09:47.619: E/WebCampusError(5192): impossible de parser les attributs: No value for name
    Mon objectif serait donc de récupérer l'attribut 'name' ainsi que l'attribut 'id' pour pouvoir ensuite les afficher. Quelqu'un aurait-il des idées à ce sujet?

  2. #2
    Expert éminent

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Points : 7 618
    Points
    7 618
    Billets dans le blog
    3
    Par défaut
    L'erreur dit simplement que l'objet JSON n'a pas d'attribut "name"... il est comment cet objet JSON ?

    Copie ici l'ensemble de la réponse d'un browser à:
    http://127.0.0.1:8080/NoteTonSTA/rest/campuses/1
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2011
    Messages : 88
    Points : 64
    Points
    64
    Par défaut
    Merci pour ta réponse,

    Entre temps j'ai bidouillé 2-3 trucs donc voici mon code:

    WebCampus.java:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    package com.supinfo.notetonsta.web;
     
    import java.net.URI;
    import java.util.ArrayList;
    import java.util.List;
     
    import org.apache.http.HttpResponse;
    import org.apache.http.client.HttpClient;
    import org.apache.http.client.methods.HttpGet;
    import org.apache.http.impl.client.DefaultHttpClient;
    import org.apache.http.util.EntityUtils;
    import org.json.JSONArray;
    import org.json.JSONObject;
     
    import android.util.Log;
     
    import com.supinfo.notetonsta.model.Campus;
     
    public class WebCampus {
     
    	JSONArray jsonArray;//contiendra la liste de tous les campus
    	private List<Campus>listCampus;
    	String result;
     
    	public List<Campus>getCampusList(){
     
    			try {
    				//connexion a la ressource
    				HttpClient httpClient = new DefaultHttpClient();
    				HttpGet httpGet = new HttpGet();
     
    				httpGet.setURI(new URI("http://10.0.2.2:8080/NoteTonSTA/rest/campuses"));
    				httpGet.setHeader("Content-Type","application/json");//utilisation json et non xml
     
    				HttpResponse httpResponse = httpClient.execute(httpGet);
    				result = EntityUtils.toString(httpResponse.getEntity());
     
    			} catch (Exception e) {
    				Log.e("HTTPClient", e.getMessage(), e);
    			}
     
    			try {
    				jsonArray = new JSONArray(result);
    			} catch (Exception e) {
    				Log.e(getClass().getName(), e.getMessage(), e);
    			}
     
     
    		listCampus = new ArrayList<Campus>();
     
    		//récupération des attributs json de l'url pour tous les campus
    		try {
    //			campus.setName(object.getString("name"));
    //			campus.setId(object.getLong("id"));
    			for (int i = 0; i < jsonArray.length(); i++) {
    				Campus campus = new Campus();
    				JSONObject jsonObject = jsonArray.getJSONObject(i);
     
    				campus.setId(jsonObject.getLong("id"));
    				campus.setName(jsonObject.getString("name"));
     
    				listCampus.add(campus);
    			}
     
    		} catch (Exception e) {
    			Log.e(getClass().getName(), e.getMessage(), e);
    		}
     
    		return listCampus;//on retourne tous les objets campus
    	}
     
    	public WebCampus() {
     
    	}
     
    }
    utilisation dans l'activity:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    package com.supinfo.notetonsta;
     
    import java.util.ArrayList;
    import java.util.List;
     
    import org.json.JSONException;
    import org.json.JSONObject;
     
    import com.supinfo.notetonsta.model.Campus;
    import com.supinfo.notetonsta.web.WebCampus;
     
    import android.app.Activity;
    import android.content.Intent;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.AdapterView;
    import android.widget.AdapterView.OnItemClickListener;
    import android.widget.LinearLayout;
    import android.widget.ListAdapter;
    import android.widget.ListView;
    import android.widget.TextView;
     
    //main activity
    public class NoteTonSTA2Activity extends Activity implements OnClickListener,OnItemClickListener{
        /** Called when the activity is first created. */
     
    	List<Campus>listCampus;
     
    	LinearLayout mainLayout;//layout principal
    	ListView listView;//listView du main.xml
    	ListAdapter la;
     
    	JSONObject object;
    	WebCampus webCampus;
     
    	//test pour tester changement d'activité:
    	TextView presentation;
     
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);//on mappe activity à main.xml
     
            webCampus = new WebCampus();//classe de gestion des campus
            listCampus = new ArrayList<Campus>();
     
            listCampus = webCampus.getCampusList();
            if (listCampus != null) {
     
    		} else {
    			Log.e("ListCampusError", "Erreur lors de l'operation listCampus");
    		}
     
            //récupération éléments xml (=view)
            mainLayout = (LinearLayout)findViewById(R.id.mainLayout);//conversion en linearlayout, on récupere via ressource id
            //listView = (ListView)findViewById(R.id.campuses);//conversion en listview 
     
            presentation = (TextView)findViewById(R.id.presentation);//on récupère l'élément
            presentation.setOnClickListener(this);
     
        }
     
        //ajout de campus, affichage des campus, prendre les id et fonction de ces id --> afficher dans l'autre activity 
        public void addCampus(){
     
        }
     
    	@Override
    	protected void onDestroy() {
    		// TODO Auto-generated method stub
    		super.onDestroy();
    	}
     
    	@Override
    	protected void onPause() {
    		// TODO Auto-generated method stub
    		super.onPause();
    	}
     
    	@Override
    	protected void onRestart() {
    		// TODO Auto-generated method stub
    		super.onRestart();
    	}
     
    	@Override
    	protected void onResume() {
    		// TODO Auto-generated method stub
    		super.onResume();
    	}
     
    	@Override
    	protected void onStart() {
    		// TODO Auto-generated method stub
    		super.onStart();
    	}
     
    	@Override
    	protected void onStop() {
    		// TODO Auto-generated method stub
    		super.onStop();
    	}
     
    	public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
    		// TODO Auto-generated method stub
     
    	}
     
    	public void onClick(View v) {
    		// TODO Auto-generated method stub
    		Intent intent = new Intent(this, CampusIntervention.class);
    		startActivity(intent);
    		//startActivityForResult(intent, TEST);//on change de page = activity
    	}
     
    	//au moment ou on change d'activity, passer dans le bundle l'id du campus visé pour ensuite afficher dans la next activity les interventions du campus sélectionné:
    	//onActivityResult
     
     
    }
    Et voici comme tu me l'as demandé le résultat de la ressource du browser:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    {"campuses":[{"id":"2","name":"Bordeaux","id":"3","name":"Lille","id":"1","name":"Lyon"}]}
    Pour finir les logs qui montrent que les valeurs sont mal stockées:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    03-28 13:14:41.509: E/com.supinfo.notetonsta.web.WebCampus(12181): Value {"campuses":[{"id":"1","name":"Lyon"}]} of type org.json.JSONObject cannot be converted to JSONArray
    03-28 13:14:41.509: E/com.supinfo.notetonsta.web.WebCampus(12181): org.json.JSONException: Value {"campuses":[{"id":"1","name":"Lyon"}]} of type org.json.JSONObject cannot be converted to JSONArray
    03-28 13:14:41.509: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at org.json.JSON.typeMismatch(JSON.java:107)
    03-28 13:14:41.509: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at org.json.JSONArray.<init>(JSONArray.java:91)
    03-28 13:14:41.509: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at org.json.JSONArray.<init>(JSONArray.java:103)
    03-28 13:14:41.509: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at com.supinfo.notetonsta.web.WebCampus.getCampusList(WebCampus.java:43)
    03-28 13:14:41.509: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at com.supinfo.notetonsta.NoteTonSTA2Activity.onCreate(NoteTonSTA2Activity.java:49)
    03-28 13:14:41.509: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
    03-28 13:14:41.509: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611)
    03-28 13:14:41.509: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
    03-28 13:14:41.509: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at android.app.ActivityThread.access$1500(ActivityThread.java:117)
    03-28 13:14:41.509: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
    03-28 13:14:41.509: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at android.os.Handler.dispatchMessage(Handler.java:99)
    03-28 13:14:41.509: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at android.os.Looper.loop(Looper.java:123)
    03-28 13:14:41.509: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at android.app.ActivityThread.main(ActivityThread.java:3683)
    03-28 13:14:41.509: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at java.lang.reflect.Method.invokeNative(Native Method)
    03-28 13:14:41.509: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at java.lang.reflect.Method.invoke(Method.java:507)
    03-28 13:14:41.509: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
    03-28 13:14:41.509: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
    03-28 13:14:41.509: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at dalvik.system.NativeStart.main(Native Method)
    03-28 13:14:41.519: E/com.supinfo.notetonsta.web.WebCampus(12181): null
    03-28 13:14:41.519: E/com.supinfo.notetonsta.web.WebCampus(12181): java.lang.NullPointerException
    03-28 13:14:41.519: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at com.supinfo.notetonsta.web.WebCampus.getCampusList(WebCampus.java:55)
    03-28 13:14:41.519: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at com.supinfo.notetonsta.NoteTonSTA2Activity.onCreate(NoteTonSTA2Activity.java:49)
    03-28 13:14:41.519: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
    03-28 13:14:41.519: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611)
    03-28 13:14:41.519: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
    03-28 13:14:41.519: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at android.app.ActivityThread.access$1500(ActivityThread.java:117)
    03-28 13:14:41.519: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
    03-28 13:14:41.519: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at android.os.Handler.dispatchMessage(Handler.java:99)
    03-28 13:14:41.519: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at android.os.Looper.loop(Looper.java:123)
    03-28 13:14:41.519: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at android.app.ActivityThread.main(ActivityThread.java:3683)
    03-28 13:14:41.519: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at java.lang.reflect.Method.invokeNative(Native Method)
    03-28 13:14:41.519: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at java.lang.reflect.Method.invoke(Method.java:507)
    03-28 13:14:41.519: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
    03-28 13:14:41.519: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
    03-28 13:14:41.519: E/com.supinfo.notetonsta.web.WebCampus(12181): 	at dalvik.system.NativeStart.main(Native Method)
    Des idées pour stocker les données JSON de manière convenable? :s

    PS: l'adresse que j'utilise fonctionne, l'adresse en localhost ne marche pas dans le programme mais je ne sais pas pourquoi (il arrive a retrouver la ressource en tout cas)...

  4. #4
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2011
    Messages : 88
    Points : 64
    Points
    64
    Par défaut
    Bon alors du coup l'objet récupéré est un JSONObject:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    {"campuses": [{"id" : "2","name" : "Bordeaux"},{"id" : "3","name" : "Lille"},{"id" : "1","name" : "Lyon"}]}
    Que puis-je faire pour récupérer chaque "id" et chaque "name"? (je dois dire que la syntaxe m'embrouille un peu)...

    Quand je fais un:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    campus.setId(jsonObject.getLong("id"));
    Mon id ne contient aucune valeur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    03-29 04:52:53.550: E/com.supinfo.notetonsta.web.WebCampus(12923): org.json.JSONException: No value for id

  5. #5
    Expert éminent

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Points : 7 618
    Points
    7 618
    Billets dans le blog
    3
    Par défaut
    Il suffit de suivre la structure:

    JSONObject
    "campuses": JSONArray
    #0 : JSONObject
    "id":..
    "name":...


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    HttpResponse response....
    JSONObject jsonResult= new JSONObject(EntityUtils.toString(response.getEntity()));
    JSONArray jsonCampuses = jsonResult.getJSONArray("campuses");
    for (...) {
       JSONObject jsonCampus = jsonCampuses.getJSONObject(i++);
       jsonCampus.getString("name");
       jsonCampus.getString("id");
    }
    Au passage c'est bien getString("id")... en json un long s'écrit sans les guillemets autour, là c'est bien un type "string" pour les IDs.
    Sinon ca serait:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    {"campuses":[{"id":2,"name":"Bordeaux"},{"id":3,"name":"Lille"},{"id":1,"name":"Lyon"}]}
    Au fait, attention aux espaces, JSON l'accepte normalement, mais je connais un ou deux décodeurs qui ne les aime pas.
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

  6. #6
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2011
    Messages : 88
    Points : 64
    Points
    64
    Par défaut
    Merci l'ami!

    En effet c'est cette structure! J'avais trouvé la solution à mon problème, mais ta réponse ne pouvait être plus claire, je te remercie pour ta patience et ton aide

    Pour ce qui est des id je les convertissait directement en long via la méthode
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    long id = object.getLong("id");

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 26/04/2014, 18h58
  2. Persistance des données en base Web Service
    Par megaloplex dans le forum JPA
    Réponses: 0
    Dernier message: 01/10/2012, 17h28
  3. Sécurité des données d'un Web Service REST
    Par ahmeddrira dans le forum Services Web
    Réponses: 1
    Dernier message: 21/05/2012, 10h39
  4. [IP-2010] Récupération de données Via un Service Web SOAP
    Par gjeanne dans le forum InfoPath
    Réponses: 1
    Dernier message: 30/03/2012, 11h10
  5. récupération des données via une liste déroulante
    Par rahan_dave dans le forum Access
    Réponses: 1
    Dernier message: 13/10/2005, 12h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo