Spring 3 MVC 和模态向导
Posted
技术标签:
【中文标题】Spring 3 MVC 和模态向导【英文标题】:Spring 3 MVC and modal wizards 【发布时间】:2011-07-28 23:20:33 【问题描述】:我正在考虑将向导集成到现有的 Spring 3 MVC+JPA+Jquery+JSP 应用程序中。我希望该向导基于 jquery 模态叠加,但如有必要,我愿意考虑其他框架。
我查看了 Spring Webflow - 但无法弄清楚如何让它与模态覆盖一起工作。我确实找到了一个教程http://realworldagile.wordpress.com/2009/10/06/modal-wizard-forms-using-spring-webflow-2-0-8-and-richfaces/,但它与 RichFaces 相关。
我想不通
-
如何在叠加层中启动向导
如何从一个覆盖屏幕转换到另一个覆盖屏幕 - 作为状态转换的一部分。
如何在叠加层中进行服务器端验证
【问题讨论】:
【参考方案1】:我认为,如果可能的话 - 不要在向导的步骤中使用 SS 验证。可能,如果您只能在客户端实现向导模式,因为您不需要服务器上的部分正确数据(一些对话页面完成,但有些则不需要)。当然,您可以附加 jBPM、活动、Spring WEB Flow 来解决这个问题,但我认为大多数向导只需要像 this 这样的东西。用户在一个页面的所有步骤中填写数据,您在 JS 端验证并收集数据,然后单击“完成”-您发送数据并在 SS 中再次验证。
【讨论】:
【参考方案2】:您可以使用子流:http://static.springsource.org/spring-webflow/docs/2.3.x/reference/html/ch03s09.html
这样,您可以在返回当前流程之前遵循辅助流程(向导部分)。从功能的角度来看,它与模态叠加层类似,但具有所有标准的 WebFlow 机制和特性(例如服务器端验证)。
【讨论】:
【参考方案3】:如果使用 webflow,答案似乎是在“嵌入”模式下使用 web flow(请参阅embedded mode)。特别是,您在 jQuery 中的 ajax 处理程序将用从服务器发送的片段替换模态对话的内容(请参阅ajax)。
就我个人而言,我使用过这个 jQuery UI wizard 插件;在这种方法中,您生成模型,并由 Spring MVC 使用 json 从控制器发送,您在 jQuery ajax 处理程序中以编程方式使用它,该处理程序又链接到向导的步骤。我认为这将是您更手动的选择。
【讨论】:
以上是关于Spring 3 MVC 和模态向导的主要内容,如果未能解决你的问题,请参考以下文章