2010-10-26 6 views
2

J'utilise un contrôle d'arborescence dans mon application GWT. L'arborescence comporte différents éléments basés sur l'utilisateur connecté. Une façon de remplir l'arborescence consiste à interroger le serveur à partir de mon code GWT pour obtenir une liste d'éléments d'arborescence. Mais puisque les éléments seront toujours montrés, ne vaudrait-il pas mieux inclure les informations les concernant dans la page elle-même? Je suis à la recherche de points de vue pour y parvenir. Serait-il possible d'obtenir un moteur de modèle comme django pour insérer ces valeurs dans les variables de chaîne GWT au moment du service? Ensuite, je peux utiliser ces variables de chaîne pour peupler l'arbre. Ou y a-t-il un meilleur moyen d'y parvenir?GWT définir des valeurs variables avec des modèles Django

Répondre

2

J'ai répondu à une question très similaire dans le groupe GWT last year, donc vous pourriez vouloir y jeter un coup d'oeil.


L'idée, comme vous le dites, est de embed ces données dans la page d'accueil, au lieu de tirer une demande supplémentaire GWT RPC lors de l'initialisation de l'application. Vous pouvez:

  1. Intégrer les données contenues dans une variable JavaScript dans votre page d'accueil, et l'accès à l'aide de la classe

    Dictionary Ceci est une solution simple, surtout si vos données sont sérialisable comme un dictionnaire de chaînes . Vous pouvez utiliser le moteur de template de votre choix pour insérer ces données dans votre page hôte (Django, Moustache, FreeMarker, JSP ...).

  2. Intégrer une Payload-RPC GWT dans votre page d'accueil, comme expliqué here et there

    Cela vaut mieux si vous avez besoin de sérialisation d'un graphe d'objet entier (qui pourrait être ce que vous voulez pour votre widget Arbre, selon sur sa complexité). C'est comme une requête GWT-RPC standard, mais au lieu d'envoyer une requête HTTP au démarrage, la "réponse" GWT-RPC aurait été intégrée dans votre page hôte lorsque vous la servez.

+1

C'est la bonne réponse. Un autre tutoriel ici: http://code.google.com/webtoolkit/articles/dynamic_host_page.html –

+0

Wow, bel article. N'a pas pensé à utiliser JSNI pour accéder aux données incorporées, mais cela a aussi du sens. –

Questions connexes