【发布时间】:2011-09-14 15:52:29
【问题描述】:
目前正在编写一个非常简单的 Web 应用程序,我正在从头开始构建框架(MVC 设计)。 我的代码没有问题,我的问题与设计有关。
我将解释我正在尝试做的场景。
计划执行以下操作:
在 JSP 中,我有一个用于用户输入的 html 表单和一个提交它的按钮。
点击提交按钮:
将对初始处理 Servlet 进行 ajax 调用,其任务是检查每个输入参数并验证它们(服务器端验证)。
我想使用 ajax 的原因是因为我希望能够在不实际刷新页面的情况下显示“输入验证后的错误消息”
在初始处理 Servlet 中:
如果有任何输入验证错误(例如:错误的电子邮件格式、无效日期等),则将响应与错误消息一起发送回父 JSP。
如果没有遇到验证错误,则将请求转发到下一个 Servlet,后者将依次处理请求并显示下一个 JSP。
我的问题:
假设表单输入中没有验证错误。 (这就是我的困境出现的地方)。
- 难道不会让第一个 JSP 的 ajax 调用等待某种响应吗?
我们不打算发回对 ajax 调用的响应可以吗? (我假设这些请求最终可能会超时。但我对此感到不舒服。)
有没有更好的方法来做我想做的事情?
PS:
单击提交按钮时,我不想对服务器进行两次单独的调用。下面解释
- Ajax 调用 1:验证表单。 (发回成功或错误消息)
- 如果 ajax 调用返回成功则正常提交表单。 (如果我使用这种效率低下的方法,我将不得不进行两次验证。)
【问题讨论】:
-
我希望能安全地登录。 :)
标签: java ajax model-view-controller servlets