< 上一课 | 下一课 >

课程 2.3:使用导航规则

在本课程中,将学习如何设置导航规则以将站点用户引导至特定 Web 页面。

鉴于设置 new_record.jsp 页面的方式,用户一定要非常细心,不要输入已在使用中的 ID 号,这是因为数据库中的每条记录必须具有唯一的 ID 号。在课程 1.5:对“提交”按钮进行编程的“防止重复键”注释中对此进行了更详细的说明。在本课程中,将检查输入的 ID 是否唯一,如果不是,那么对用户显示错误页,该错误页将描述问题并告诉用户如何解决问题。

导航规则使您在检查用户是否输入了重复的 ID 号之后,能够对用户显示错误页或 all_records.jsp 页面。您将为这两种可能的结果指定“别名”,然后将这两个别名链接至正确的目标页面。在本例中,create_record.jsp 页面上的错误将指定 ERROR_CREATE 别名,该别名将把用户引导至错误页。如果用户正确填写了 create_record.jsp 页面,那么该页面将指定 MAIN 别名,通常该别名将链接至 all_records.jsp 页面。

设置规则

  1. 在“企业资源管理器”中双击 new_record.jsp 页面。
  2. 单击页面上的发布新列表按钮。
  3. 在“属性”视图中,单击添加规则。“添加导航规则”窗口打开。 如果在创建新记录并将它落实到数据库时发生某些错误,那么第一条规则将对用户显示名为 create_error.jsp 的错误页。
  4. 页面字段中,输入 error_create.jsp。此页面不存在,但是就本教程而言,您可假定它存在。
  5. 单击命名结果单选按钮。
  6. 命名结果单选按钮后面的文本字段中输入 ERROR_CREATE
  7. 单击仅此页面单选按钮,因为在此站点中,用户可通过输入重复 ID 号来触发此特定错误的其他页面不存在。单击确定 如果用户输入了有效的 ID 号,那么下一条规则将导航到 all_records.jsp。
  8. 单击添加规则按钮以再次打开“添加导航规则”窗口。
  9. 使用页面下拉框来选择 all_records.jsp
  10. 单击命名结果复选框然后将 MAIN 输入到复选框后面的文本字段中。
  11. 由于您可能要在另一个页面(例如,update_record.jsp 页面)中复用此规则,所以单击此规则适用范围下面的所有页面单选按钮。单击确定。 现在,这两个规则显示在“属性”视图上。

从按钮操作返回别名

现在,其余所有工作就是让新的导航规则生效。将为“发布新列表”按钮在代码中添加两个 return 语句。这些 return 语句将向相应别名发出指示,以按导航规则中设置将用户引导至相应页面。
  1. 单击发布新列表按钮。
  2. 打开快速编辑视图。
  3. 在“快速编辑”视图中,查找内容如下的行:} catch (Throwable e) {。如果用户输入了重复的 ID 号,此 catch 函数就将运行。
  4. 除去此行末尾的左花括号 { 与数行后的下一个与之匹配的右花括号 } 之间的所有代码。请不要除去任何一个花括号。
  5. 在花括号之间代码的位置处输入以下文本:return "ERROR_CREATE";
  6. 接着,除去最后一个右花括号 } 下面的所有代码,并在此处输入以下文本:return "MAIN";

    此步骤会除去在练习 1.4 中添加的 gotoPage 操作。由于导航规则执行了同样的操作,所以不再需要此代码。

    按钮的代码现在应该类似于下图:

    “快速编辑”视图。

  7. 保存该页面,然后对它进行测试(如果您愿意的话)。
(可选)可创建名为 create_error.jsp 的一个简单错误页,该错误页向用户说明创建他们的列表时发生了错误,他们应尝试使用另一个 ID 值。然后,您可以通过尝试添加使用现有 ID 值(例如,1)的新列表来测试这些导航规则。

课程复习要点

您已经完成了课程 2.3。在本课程中,学习了如何使用导航规则来达到以下目的:在用户尝试输入无效 ID 值之后就会产生错误,而在用户输入有效 ID 之后就对该用户显示 all_recordlist.jsp。
< 上一课 | 下一课 >

反馈