Bonjour,
Je fais une appli web avec GWT coté client, hibernate coté accès aux données et Spring pour l'injection et la gestion des transactions.

L'application fait un peu plus que du CRUD sur des tables stockés en base Oracle.
Je dis un peu plus car on a des écrans qui affiche un formulaire d'une table mais aussi le formulaire des tales filles.
Bref on travail coté client au niveau DOM (Domain Object Model).
Exemple :
J'ai en base 3 tables : Département qui contient des Communes qui contiennent chacune des Établissements.
Mon écran CRUD qui gère Département affiche la liste des communes. On naviguer sur le détail d'une commune puis sur le détail d'un établissement.

Mon objet DOM contient donc les trois objets imbriqués.

Lorsque je charge un département avec ses 400 communes ! l'échanges serveur <-> Gwt prend 7 secondes !!
Je ne peux pas garder ma session hibernate ouverte pendant les modifs du DOM. Je suis donc obligé de garder mon DOM en mémoire.

Mes questions sont les suivantes :
Faut-il garder le DOM coté serveur en sessoin utilisateur par exemple et gèrer de multiple échange entre GWT et le serveur ?

Avez vous un retour d'expérience sur une gestion similaire ?

Avez vous des problèmes de lenteur sur des grosses applis RIA (GWT, Flex ...)?.