WebSphere Studio创建一个完整的EJB应用(连载)
pinoo 2005-04-02 10:43:44 最近在http://www.weblogic.com.cn看了篇文章,转贴过来^_^大家也可以直接去http://www.weblogic.com.cn看完,这不允许贴太多,那的东东也不少,还可以申请xxx@weblogic.com.cn的邮箱^_^……
简介
本文描述了如何用 VisualAge? for Java?, 5.0 企业版和 WebSphere? Studio 5.0 创建一个完整的 EJB 应用, 并将之部署到 WebSphere Application Server 5.0 高级单机版(AEs)和高级版(AE). 用 WebSphere Studio 和应用组装工具(AAT)来生成部署文件, 并在 WebSphere Application Server 上运行部署后的代码. 本文目的是表明 WebSphere Studio 5.0 有助于部署 过程; WAR 文件可以自动生成, 不需手工创建.
通过一个简单的 how-to 例子, 示范将 EJB 部署到 WebSphere Application Server 5.0 的两个版本所须步骤. 本文没有详细描述 J2EE技术及其开发过程, 读者可以参考 WebSphere Application Server 5.0 的在线文档. IBM 的红皮书也很有帮助. 参见相关资源.
本文示例是记录一位客户所遇到的情况.
场景
客户使用 VisualAge for Java 5.0 创建和测试一个简单的会话 EJB 及其Access bean (参考 Vajava.dat 于下载文件). 经过测试后, 将生成的 Java 类从 VisualAge for Java 导出到 WebSphere Studio 5.0 (参考下载文件中的 Studio.wsr), 依靠现有的向导生成 HTML, servlet, 和 JSP?. 在 VADD 和 WSDD 的许多文档中可以找到如何进行这一步. 参考 相关. 需要注意的是 3.5 和 5.0 的导出步骤是相同的.
现在, 假定 EJB 已由 VisualAge for Java 生成及测试, 并且代码已导出到 WebSphere Studio. 在 VisualAge for Java 的前一个版本中, 它的 WebSphere 测试环境可用来测试生成的 HTML, servlet 和 JSP.
【回贴】 [原创] WebSphere Studio创建一个完整的 EJB 应用(2) 作者:小猪哥 查看:0 回复:0
[第 14 楼] 发表于4/2/2005 1:4:25
Web 应用程序简介
在本教程中, Web 应用可在任何浏览器运行(无客户端代码). 通过一个非常简单的 HTML 页面调用 servlet, 后者调用 JSP 和 EJB. 为简化过程, 这里将不涉及数据库.
【回贴】 [原创] WebSphere Studio创建一个完整的 EJB 应用(3) 作者:小猪哥 查看:0 回复:0
[第 13 楼] 发表于4/2/2005 1:5:17
简单的 EJB
EJB 是企业应用中表示商业模型对象的服务器端构件. 为简化例子, 这里使用了一个会话 EJB (无数据库存取), 目的是进行一个简单计算, 将两个域的值相加 并将结果放到第三个域, 它将只暴露 4 个方法: set/get 值和将两个域相加.
图 2 表示相应的对象.
会话 EJB CalculatorEJB 被调用, 其属性是 field1, field2 和 result, 方法是 addFields.
【回贴】 [原创] WebSphere Studio创建一个完整的 EJB 应用(4) 作者:小猪哥 查看:0 回复:0
[第 12 楼] 发表于4/2/2005 1:5:50
任务顺序
学习这个教程, 必须安装如下软件:
VisualAge for Java 5.0 企业版
WebSphere Studio 5.0 专业或高级版
WebSphere Application Server 5.0 高级单机版 (或完整的高级版)
Java 代码参见 下载文件. 进行部署之前需要完成以下任务:
从 VisualAge for Java 导出 EJB 1.1 JAR 文件.
用 Studio 创建和发布 WAR 文件.
用应用组装工具 AAT 生成 EAR 文件.
将 EAR 安装到 ASSE 5.0.
测试应用.
将 EAR 安装到 AE 5.0.
【回贴】 [原创] WebSphere Studio创建一个完整的 EJB 应用(6) 作者:小猪哥 查看:0 回复:0
[第 11 楼] 发表于4/2/2005 1:6:45
从VisualAge for Java 导出 EJB 1.1 JAR 文件
1. 检查正确的特性是否被装载
这里假定已经由 VisualAge for Java 5.0 创建出了 EJB. 你可以从下载文件中的 Vajava.dat 文件选择导入项目 CalculatorEJB 到你的 VisualAge for Java 开发环境中. 在导入项目前请确认 VisualAge for Java 特性 IBM EJB Development Environment 和 Export Tool for Enterprise Java Beans 1.1 已装载到你的 VisualAge for Java 5.0 工作区.
2. 确认 VisualAge for Java 中所有代码就绪
这里所用的例子可由 VisualAge for Java 的导入对话框进行装载. 下载文件包含了所须代码. VisualAge for Java 所创建的元素具有以下命名.
元素 名字
VisualAge Project name RB_V4_Project
Java Package name rb.ejb.pkg
VisualAge EJB group RB_V4_EJB_Group
EJB Session Bean CalculatorEJB
Class Properties field1, field2, result
Class Method addFields
EJB Access Bean CalculatorEJBAccessBean
创建完会话 EJB 后, 可以看到:
【回贴】 [原创] WebSphere Studio创建一个完整的 EJB 应用(6) 作者:小猪哥 查看:0 回复:0
[第 10 楼] 发表于4/2/2005 1:7:27
点击图标 , 可以看到生成的Access bean (CalculatorEJBAccessBean). 再次点击 则只能看到基本类. 我们将从这儿开始.
为什么会有一个 EJB Access bean(EJB access bean)? 两个 interface 定义了客户端程序访问 EJB 的方式: home interface 和 remote interface. Home interface 包含如何初始化 EJB 对象的方法描述. 而 remote interface 定义了用户端程序可以访问的 EJB 的方法(在我们的例子里, 就是 field1 和 field2 的 setter 方法, result 和 addFields 的 getter 方法). 用户端程序通过以下步骤访问 EJB:
从命名服务器获得上下文 (命名服务上下文).
用命名服务上下文查找 EJB home.
从 EJB home 创建出一个 EJB 实例, 返回得到一个 EJB 代理对象.
通过 EJB 代理对象访问 EJB 实例的远程方法. 对 EJB 代理对象的每个远程调用都可能产生例外, 比如 java.rmi.RemoteException.
如果直接对 EJB interface 进行编程, 会增加客户端程序的复杂性并招致严重的性能问题. 对 EJB 代理对象的每次调用都是远程调用, 所以访问大量实体 bean 的属性需要消耗大量的时间. 这些问题可以由 EJB Access bean 来解决.
简单来说, 访问 bean (access beans) 是经过包装的 JavaBean?, 它能提供对 EJB 的快速访问, 让你象使用 JavaBeans 一样使用 EJB. 详细请参考 在 VisualAge for Java 中开发 EJB.
这里用 WebSphere Studio 的向导从 EJB 的Access bean 创建了一个 servlet 和一个 JSP from the EJB access bean.
【回贴】 [原创] WebSphere Studio创建一个完整的 EJB 应用(7) 作者:小猪哥 查看:0 回复:0
[第 9 楼] 发表于4/2/2005 1:8:13
3. 用 VisualAge for Java 的客户端测试程序进行测试
至此, 已创建 EJB 会话 bean 并将看它是否能工作. 在例子中, 当我们提供了两个域后, 我们要得到结果. 用 VisualAge for Java 的客户端测试程序来测试 EJB 的 home interface 和 remote interface 的方法. 客户端测试程序还可以传递用户定义的参数来调用方法以进行验证.
详细请参考 VisualAge for Java 在线帮助中的 "测试EJB" 主题.
当 EJB 被装载到工作区后, 以下步骤对它进行测试:
启动 VisualAge for Java.
选择 Workspace => Tools => WebSphere Test Environment 启动 WebSphere 测试环境.
启动 Persistent Name Server. 等待控制台显示消息 "E Server open for business."
转至 EJB 页, 选择 Add to => Server Configuration 将 RB_V4_EJB_Group 增加到 EJB 服务器配置.
点击 Start Server 启动 EJB Server. 再次等待控制台显示消息 "E Server open for business."
仍在 EJB 页, 在 CalculatorEJB 弹出菜单, 选择 Run Test Client.
EJB 测试客户端对话框出现后, 按 Lookup.
调用方法 Create 生成一个远程对象.
下面是测试的顺序. 这里只简单计算 5 + 4. 图4 和图5 设两个域的值.
【回贴】 [原创] WebSphere Studio创建一个完整的 EJB 应用(8) 作者:小猪哥 查看:0 回复:0
[第 8 楼] 发表于4/2/2005 1:8:52
为调用方法 addFields, 右键点击 addFields 并选 Invoke. 右键点击 getResult 并选 Invoke 检查计算是否正确. 如得到结果是 9 即为正确!
4. 从VisualAge for Java 生成 EJB 1.1 JAR 文件
VisualAge for Java 创建的 EJB 是 1.0 格式的. 为将 EJB JAR 文件部署到 WebSphere Application Server 5.0, 需要将它导出成 EJB 1.1 格式. EJB 1.1 JAR 文件包含所有定义的代码和部署所须的 XML 文件. 开始导出前, 确认特性 Export Tool for Enterprise Java Beans 1.1 已被装载到 VisualAge for Java 工作区.
转至 EJB 页, 选择要导出的 EJB 组(本例中是 RB_V4_EJB_Group), 选择 Export => EJB 1.1 JAR.
在打开的对话框中指定 JAR 文件位置. (作者使用的是 C:\temp\RB_V4_EJB.jar.) 确认 .class 和 resource 被选择. 在 Options 里, 确认 Compress the contents of the JAR file 被选择. 生成文件 RB_V4_EJB.jar. 将 JAR 文件解压缩后可看到生成了 XML 文件(描述符). 记住它们的路径, 后面将会用到.
(未完待续……)大家也可以直接去http://www.weblogic.com.cn看完,这不允许贴太多,那的东东也不少,还可以申请xxx@weblogic.com.cn的邮箱^_^……