练习 1.3:开发 UserAdmin 页面

在开始之前,必须先完成练习 1.2:准备 portlet 开发和定义应用程序流

创建 UserAdminView.jsp 页面

创建 UserAdminView.jsp 页面包括设计用户界面以及将与动态数据的连接(EJB 会话引用)添加到应用程序的逻辑中。

  1. 如果在 Page Designer 中未打开 UserAdminView.jsp,则可以在 Web 图编辑器中双击 UserAdminView.jsp 图标来打开它。
  2. 删除缺省文本将内容放在此处
  3. EJB 会话 bean 对象从选用板的数据抽屉拖动至该文件。
  4. 当“会话 bean”向导打开时,单击新建 EJB 引用按钮。
  5. 展开 AuctionPortletEAR 和 AuctionEJB50 文件夹,并选择 UserFacade 以创建企业 bean 引用。
  6. 单击完成
  7. 单击“会话 bean”向导中的下一步
  8. 选择 findByName(字符串名称)接口,它将用于 portlet 页面上的输入字段。
  9. 单击下一步
  10. 单击“输入表单”页面上的选项按钮,并在标签字段中输入查找。单击确定
  11. 单击下一步,您应进入该向导的“结果表单”页面。在此页面中,您将定义一个数据表,该数据表将检索和显示数据库中的数据。
  12. 单击以取消选择所有列,以便您可以单独选择、组织和配置该数据表中要用于 portlet 页面的适当列。然后,选择下列各列的复选框:
  13. 使用向上向下键按钮移动所选数据列,使其顺序与上一步中显示的顺序一致。
  14. 选择“用户标识”列的标签值,并将它更改为用户标识
  15. 单击完成以便为 UserAdminView.jsp 页面生成缺省用户界面。该用户界面看起来将类似于以下内容:
    UserAdminView.jsp
  16. 保存 UserAdminView.jsp。

向 UserAdmin 页面添加 Java 页面代码

在此部分练习中,将添加 Java 页面代码以完成下列任务:

  • name 参数存储在会话作用域中,以便将来可以重用它来刷新 portlet 内容。
  • 使用存储在会话作用域中的参数来初始化要显示在名称输入字段中的参数。
  • 使用存储在会话作用域中的 name 参数来初始化结果数据。
  • 可以使用下列步骤来添加 EJB 引用逻辑和代码,以便将调用和结果绑定至用户界面:

    1. 从 Page Designer 的弹出菜单中选择编辑页面代码
    2. 将以下粗体代码输入 doUserFacadeLocalFindByNameAction() 中:
      public String doUserFacadeLocalFindByNameAction() {
          String name = getUserFacadeLocalFindByNameParamBean().getName();
          getSessionScope().put("name", name);
      try {
                      userFacadeLocalFindByNameResultBean = 
                     getUserFacadeLocal().findByName(name);
           } catch (Exception e) {
               logException(e);
          }
          return null;
      }
      
    3. 将以下粗体代码输入 getUserFacadeLocalFindByNameParamBean() 中:
      public UserFacadeLocalFindByNameParamBean 
                   getUserFacadeLocalFindByNameParamBean() {
          if (userFacadeLocalFindByNameParamBean == null) {
              userFacadeLocalFindByNameParamBean = 
                     new UserFacadeLocalFindByNameParamBean();
              String name = (String)getSessionScope().get("name");
              userFacadeLocalFindByNameParamBean.setName(name);
          }
          return userFacadeLocalFindByNameParamBean;
      }
      
    4. 将以下粗体代码输入 getUserFacadeLocalFindByNameResultBean() 中:
      public RegistrationData[] getUserFacadeLocalFindByNameResultBean() {
          if (userFacadeLocalFindByNameResultBean == null) {
              String name = (String)getSessionScope().get("name");
              if (name != null) {
      try {
                      userFacadeLocalFindByNameResultBean = 
                      	getUserFacadeLocal().findByName(name);
           } catch (Exception e) {
               logException(e);
                  }
              }
          }
          return userFacadeLocalFindByNameResultBean;
      }
      
    5. 保存并关闭 UserAdminView.java。

    运行 UserAdminView.jsp

    要验证 UserAdmin portlet 到目前为止一直在按预期运行,您应该在与 Rational 工具一起提供的内部浏览器中运行 portlet。要运行 portlet,执行下列步骤:

    1. 在“项目资源管理器”中选择 AuctionPortlet 项目,并从弹出菜单中选择运行 > 在服务器上运行
    2. 因为您已经定义了 WebSphere Portal V5.1 测试环境,所以选择它并单击“选择服务器”向导中的完成
    3. 该文件最终将显示在浏览器中。在此处,您可以看到用户在门户网站站点上会看到的输入字段和布局:
      UserAdmin portlet
    4. 要测试您刚才已创建的输入表单和数据表,在名称字段中输入 % 并单击查找按钮。

      数据表应该显示所有用户。
      UserAdmin 查询结果

    在进行下一个练习之前,建议您停止测试环境服务器以便在开发期间提高性能。要停止测试环境服务器,只需在“服务器”视图中选择它,然后单击停止服务器工具栏按钮 停止服务器

    现在,您可以开始进行练习 1.4:为创建和编辑用户信息创建页面了。

    反馈
    (C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.