创建用来访问 IMS 事务的 Java 应用程序的最后一个过程是,将 J2C Java bean 打包在 Web 页面、Web Service 或 EJB 中,以便使它可以在诸如 WebSphere Application Server 的 J2EE 应用程序服务器上运行。
本示例说明如何使用 JSP 动态 Web 应用程序来将 J2C Java bean 打包。要从 J2C Java bean 创建 JSP 动态 Web 应用程序,完成下列步骤:
- 要启动 J2C 动态向导,从菜单栏中选择文件 > 新建 > 其它 > J2C。
- 展开 J2C 文件夹之后,选择 Web 页面、Web Service 或 EJB(从 J2C Java Bean)。
- 单击下一步。
- 在“来自 J2C Java Bean 的 J2EE 资源”向导中,完成下列步骤:
- 在“选择 J2C Java bean”页面上,单击 J2C bean 实现输入字段旁边的浏览。
- 在“选择条目”字段中,在输入字段中输入星号(*)以查看可用的数据类型,然后从“匹配类型”列表中选择 PBImpl.java 并单击确定。
- “J2C bean 实现”字段应该包含 /PhoneBookJ2CBean/sample/ims/PBImpl.java。
- 单击下一步。
注: 如果出现这样一条消息:“在服务器上未找到 J2C 代码所引用的资源 nnnnn。请确保资源 nnnnn 存在”,则可能是因为尚未将该资源保存至服务器的主配置中。如果未产生此错误,则继续执行步骤 6。
否则,要消除此错误消息,选择取消,然后执行下列步骤以将资源保存至服务器的主配置:
- 在“服务器”视图中,确保服务器已启动。
- 右键单击该服务器,并选择运行管理控制台。
- 登录至管理控制台。
- 在左窗格中,展开资源并选择资源适配器。
- 此时,可能会出现一条警告消息:“主配置已更新。当前与这些修改之间存在工作空间冲突。要查看这些更新,必须保存或废弃当前的工作空间修改”。保存修改。
- 如果问题仍然存在,则尝试停止并重新启动服务器。
- 在“部署信息”页面中,选择 JSP,然后单击下一步。
- 在“创建 JSP”页面中,选择创建 Faces JSP 并将 J2C Java bean 作为可用页数据来添加。
- 单击 Web 项目旁边的新建以创建新的动态 Web 项目。 “新建动态 Web 项目”窗口打开。
- 在“名称”字段中,输入 PhoneBookWeb 并单击完成。
- 当请求您切换至 Web 透视图时,选择是。
- 在“创建 JSP”页面中,让“JSP 文件夹名称”保留为空白。
- 对于 Faces 文件的名称,输入 PBookF。
注: EAR 项目的名称缺省设置为 PhoneBookWebEAR。
- 单击显示高级,并为“资源引用”输入名称。例如,myCFacRef。 注意:强烈建议您为 J2EE 资源提供资源引用。这样做起到的作用是:当您在其它 WebSphere Application Server 上安装 EAR 时,可以将 J2EE 资源映射至不同的 J2C 连接工厂;而且,如果未使用资源引用,则在运行应用程序时可能会接收到不可预测的结果。
- 单击完成。 PBookF.jsp 文件便在 JSP 编辑器中打开。
- 确保选择了 JSP 编辑器中的设计选项卡。
- 确保页数据视图打开。
- 在“页数据”视图中,完成下列步骤:
- 展开 java (sample.ims.PBImpl)。
- 将 runPB(sample.ims.data.INPUTMSG) 方法拖放到 JSP 编辑器中 PBookF.jsp 的设计视图上。 在“页数据”视图中,runPB(sample.ims.dat.INPUTMSG) 方法条目是用 M 图标标识的。如果已经给出了 IMSInteractionSpec 或 IMSConnectionSpec 属性,则 runPB 方法的特征符将包含其它自变量。
- 在“插入 Java Bean”向导的“配置数据控件”页面中,选择想要用作 runPB 方法的输入数据以及(可选)已给出的 IMSInteractionSpec 和 IMSConnectionSpec 输入属性的字段。然后单击下一步。 通过选择已选中的字段并使用“要显示的字段”列表右边的向上键和向下键来移动输入字段,就可以更改这些输入字段的顺序。
- 使用“插入 Java Bean”向导的下一页来选择这样的字段:您想要将这些字段看作 runPB 方法产生的输出消息中的输出数据以及(可选)已给出的 IMSInteractionSpec 输出属性的字段。选择想要看作 runPB 方法产生的输出数据的字段,然后单击完成。
- 关闭 PBookF.jsp 以保存更改。
现在,您就已经将 J2C Java bean 打包在 Web 页面中,以便使它可以在 J2EE 应用程序服务器上运行。