在开始之前,必须完成练习 2.3:使用文件上载组件。
鉴于设置 new_record.jsp 页的方式,用户一定要非常细心,不要输入已在使用中的 ID 号,这是因为数据库中的每条记录必须具有唯一的 ID 号。这在练习 1.4:创建新的记录中作了较详细的说明。简而言之,您应防止用户犯这种错误。
在下一个练习(即,练习 2.5:使用自动键生成)中,将使用自动键生成来完全避免输入 ID 号。在此练习中,您将检查输入的 ID 是否是唯一的,如果不是,则将用户引导至错误页,该错误页描述问题并告诉用户如何解决它。
导航规则使您能够在检查用户是否输入了重复的 ID 号之后,将用户引导至错误页或 all_records.jsp 页。您将给这两种可能的结果指定“别名”,然后将这两个别名链接至正确的目标页面。在本例中,create_record.jsp 页上的错误将通知 ERROR_CREATE 别名,该别名将把用户引导至错误页。如果用户正确填写了 create_record.jsp 页,该页将通知 MAIN 别名,该别名将与往常一样链接至 all_records.jsp 页。
如果在创建新记录并将新记录提交给数据库时发生某些错误,则第一条规则将把用户引导至名为 create_error.jsp 的错误页。
如果用户输入了有效的 ID 号,那么下一条规则将浏览到 all_records.jsp。
现在剩下来的所有工作就是让新的导航规则生效。将为“发布新列表”按钮在代码中添加两个 return 语句。这些 return 语句将向适当的别名发出指示,以将用户引导至在导航规则中设置的适当页。
如果用户输入了重复的 ID 号,此 catch 函数就将运行。
return "ERROR_CREATE";
return "MAIN";
此步骤会除去在练习 1.4 中添加的 gotoPage 操作。由于导航规则执行了同样的操作,所需不再需要此代码了。
按钮的代码现在看起来应该类似于下图:
(可选)可创建名为 create_error.jsp 的一个简单错误页,该错误页向用户说明创建他们的列表时发生了错误,他们应尝试使用另一个 ID 值。然后,您可以通过尝试添加使用现有 ID 值(例如,1)的新列表来测试这些导航规则。
现在,您可以开始进行练习 2.5:使用自动键生成了。