2011-04-04 3 views
11

Je cherche à intégrer un assistant dans une application Spring 3 MVC + JPA + Jquery + JSP existante. Je préférerais que le magicien soit basé sur des jalousies modales de jquery, cependant je suis ouvert à considérer d'autres cadres si nécessaire. J'ai regardé Spring Webflow - mais je n'arrive pas à comprendre comment le faire fonctionner avec des superpositions modales. J'ai trouvé un tutoriel http://realworldagile.wordpress.com/2009/10/06/modal-wizard-forms-using-spring-webflow-2-0-8-and-richfaces/ mais il est lié à RichFaces.Spring 3 Assistants MVC et modaux

Je ne suis pas en mesure de comprendre

  1. comment lancer un assistant dans une superposition
  2. comment passer d'un écran de superposition à l'autre - dans le cadre des transitions d'état.
  3. comment faire côté validations serveur dans la superposition

Répondre

0

Je pense, si possible - ne pas utiliser la validation SS dans les étapes de l'assistant. Possible, si vous ne pouvez implémenter le modèle d'assistant que du côté client, car vous n'avez pas besoin de données partiellement correctes sur le serveur (certaines pages de conversation sont terminées, mais d'autres non). Bien sûr, vous pouvez joindre jBPM, activité, Spring WEB Flow pour résoudre ce problème, mais je pense que pour la plupart des assistants, il suffit de quelque chose comme this. L'utilisateur remplit les données dans toutes les étapes d'une page, vous validez et récupérez-le dans le côté JS, après lui cliquez sur "Terminer" - vous envoyez des données et validez à nouveau dans SS.

0

Si vous utilisez le flux Web, il semble que la solution consiste à utiliser le flux Web en mode 'intégré' (voir embedded mode). En particulier, votre gestionnaire ajax dans jQuery remplacera le contenu du dialogue modal par des fragments envoyés par le serveur (voir ajax).

Personnellement, j'ai utilisé ce plugin jQuery UI wizard; Dans cette approche, vous générez le modèle et il est envoyé par Spring MVC à partir du contrôleur à l'aide de json, que vous utilisez par programmation dans votre gestionnaire jQuery ajax, lui-même lié aux étapes de l'assistant. Je pense que ce serait votre alternative plus manuelle.