|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre régulier
![]() Lionel ANDREInscription : avril 2005 Messages : 294 ![]() |
Bonjour,
Je galère toujours avec mon dijit.Tree et mon JsonRestStore. Je voudrais ajouter un noeud à mon Tree. J'ai suivi le tuto ici (chapitre "Programmatic Data Changes"). J'ai également suivi ce tuto pour la création de mon arbre. Je vois bien qu'il est écrit pour dojo 1.6. J'utilise dojo 1.7, est-il compatible ? Voici donc comment je procèdes pour le mettre à jour : Code :
Pour info, "this.planItemsStore.get(selectedObject.id)" renvoi un "[Trial] dojo.Deferred {}" d'après firebug... |
||
|
|
00
|
|
|
#2 |
|
Membre régulier
![]() Lionel ANDREInscription : avril 2005 Messages : 294 ![]() |
En fait je commences à comprendre (oui il me faut du temps...).
Quand j'appelle "this.planItemsStore.get(selectedObject.id)", dojo envoi la requête "GET {target}{query}". La requête échouait donc le script s'arrêtait là. C'est pourquoi "PUSH" ne s'affiche jamais. J'ai modifié le code en conséquence : Code :
this.planItemsStore.get("ajax-get-items?systemId=" + nodeId).then(function(selectedObject){...} Par contre je viens de comprendre que lorsque que je fais "store.put(selectedObject)", dojo émet une requête "PUT {target}{id}". Mon choix de Store n'est peut être pas judicieux dans ce cas. Certes les données renvoyées par le serveur sont au format JSON, mais ce n'est pas du REST. Voici les requêtes utilisées pour obtenir/mettre à jour mes items :
|
|
|
00
|
|
|
#3 |
|
Expert Confirmé
![]() ![]() Emmanuel REMY Inscription : novembre 2005 Messages : 2 844 ![]() |
Salut,
Pourquoi tu ne traites pas tes requêtes en PUT sur le server ? Tu ne peux traiter que du GET et du POST ? ERE
__________________
Quand une tête pense seule, elle devient folle. |
|
|
00
|
|
|
#4 |
|
Membre régulier
![]() Lionel ANDREInscription : avril 2005 Messages : 294 ![]() |
Bonjour Emmanuel,
Une petite remarque au passage, j'adore ta signature, je suis en plein dedans. Heureusement que ce forum existe. J'ai 2 solutions :
C'est pour cela que je préfèrerai la 2e solution. Je suis en train de voir pour connecter mon dijit.Tree à un dojo.store.Memory. Je ferai alors mes requêtes traditionnellement puis mettrai à jour le store. Théoriquement le Tree devrait se rafraichir automatiquement non ? |
|
|
00
|
|
|
#5 |
|
Expert Confirmé
![]() ![]() Emmanuel REMY Inscription : novembre 2005 Messages : 2 844 ![]() |
J'aurais tendance à dire que REST c'est REST donc c'est logique de ne pas pouvoir changer le mode de fonctionnement avec les PUT et DELETE notamment.
LA question, c'est plutôt pourquoi cela pose problème côté server ? Qu'il faille légèrement adapté, pourquoi pas mais normalement c'est sans souci. Qu'utilises tu côté server ? Ensuite, pas de souci pour utiliser dojo.store.Memory, sauf que tu vas devoir gérer toi même tes appels Ajax, ce qui n'est pas top, mais surtout c'est refaire le job que fait JsonRest... ERE
__________________
Quand une tête pense seule, elle devient folle. |
|
|
00
|
|
|
#6 |
|
Membre régulier
![]() Lionel ANDREInscription : avril 2005 Messages : 294 ![]() |
Ça devient une habitude : j'ai finalement suivi ton conseil, et je me mets au REST...
Pour le moment j'ai juste mis en place la récupération des items. Maintenant il faut que je m'occupe de la création et de la suppression... Juste une petite remarque, lorsque j'utilise le dojo.tree.TreeStoreModel, mon arborescence ne s'affiche pas. Je suis donc obligé de créer les méthodes nécessaires dans mon store et d'utiliser mon store comme model... |
|
|
00
|
|
|
#7 |
|
Expert Confirmé
![]() ![]() Emmanuel REMY Inscription : novembre 2005 Messages : 2 844 ![]() |
En quel langage tu code ?
ERE
__________________
Quand une tête pense seule, elle devient folle. |
|
|
00
|
|
|
#8 |
|
Membre régulier
![]() Lionel ANDREInscription : avril 2005 Messages : 294 ![]() |
Le serveur est une application web développée en Java.
Je me base sur le framework Spring qui - heureusement - propose des interfaces et des annotations pour envoyer/recevoir des requêtes REST facilement... Ouf |
|
|
00
|
|
|
#9 |
|
Expert Confirmé
![]() ![]() Emmanuel REMY Inscription : novembre 2005 Messages : 2 844 ![]() |
D'après ta description je juppose que tu fais du Spring Web ? Si c'est le cas c'est du tout cuit. Tu n'as qu'à gérer @RequestMapping et c'est bon
ERE
__________________
Quand une tête pense seule, elle devient folle. |
|
|
00
|
|
|
#10 |
|
Membre régulier
![]() Lionel ANDREInscription : avril 2005 Messages : 294 ![]() |
C'est vrai que ça facilite grandement les choses ;-)
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com