此任务是演示如何创建多页面 SDO 应用程序的四个任务中的第三个任务。在此任务中,创建并配置详细信息页面以便与主控页面和多次使用的 SDO 配合使用。假定您已经完成了下列任务:
- 创建将用来访问多次使用的 SDO 的 Faces JSP。如果使用的是 DB2® V8.2 SAMPLE 数据库并且已经完成了前面的任务,则打开 createEmployee.jsp。
- 在选用板的“数据”抽屉中,将“关系记录”拖至该页面。将打开“添加关系记录”向导。
- 输入记录的名称,例如,employee。
- 选择从作用域中检索现有记录或记录列表按钮并保留选择重用现有记录或记录列表中的元数据定义。
- 单击“输入文件”字段旁边的“浏览”按钮并选择先前创建的 SDO 元数据文件,例如,department.xml:
- 对于“创建控件,用于”选项,选择更新现有记录,然后单击下一步。
- 选择适当的表节点,例如,DEPARTMENT_EMPLOYEE,然后单击完成。
- 验证“页数据”视图是否显示该表的关系记录,并验证页面上是否生成了具有适当字段和控件的表单。例如,使用 SAMPLE 数据库,您应该在“页数据”视图中看到职员(EMPLOYEE)关系记录,并在 createEmployee.jsp 上看到一个包含 Empno、Firstnme、Mininit 和 Lastname 字段以及“提交”和“删除”命令按钮的表单。
- 将链接 - 命令拖到“删除”按钮的旁边。
- 单击链接标签。
- 在“属性”视图中,单击 h:commandLink 下面的 h:outputText 并将“值”字段更改为一个适合操作的名称,例如,“更新”,然后按 Enter。
- 选择 h:commandLink,然后单击“单击以编写此链接执行的操作”旁边的“快速编辑”视图图标。
- 在左边的列中,单击命令。
- 在脚本编辑区域中右键单击并选择。将打开“创建子记录”窗口。
- 选择适当的记录或记录列表,然后选择表示应更新的表的节点,例如,职员(EMPLOYEE)。
- 输入变量名,例如,employee。
- 从“变量作用域”列表中选择 Session,然后单击确定。如果使用的是 DB2 V8.2 SAMPLE 数据库,则验证是否已将下列代码添加至“快速编辑”视图:
///actionBegin: wdo.createsub.record
DataObject employeeParent = getRootDataObject(getEmployee());
DataObject employee = getRootDataObject(getEmployee()).createDataObject("EMPLOYEE");
employeeParent.getList("DEPARTMENT").add(employee);
getSessionScope().put("employee", employee);
//actionEnd: wdo.createsub.record
- 返回到“属性”视图的 h:commandLink 选项卡,然后单击添加规则。
- 添加导航规则以便“链接 - 命令”操作转至另一 JSP,例如,createEmployee.jsp。
- 保存 JSP。