MyEclipse EJB Project 快速开始 四

Posted on 2006-03-31 19:26 砖头 阅读(994) 评论(0)  编辑  收藏 所属分类: MyEclipse EJB Project

7. Using XDoclet EJB Facilities

在继续 Trader EJB 开发过程的第二过程前,我们需要介绍配置和使用 XDoclet EJB 功能。采用 XDoclet 技术的好处是标签处理器能够分析标注有 XDoclet 信息的源代码文件和生成独立的源文件和配置资源。 XDoclet 依赖于一个 ANT 脚本来指定他的执行环境和代码生成任务。一个 XDoclet 标签由注释模型组成,此模型映射 1 或多个注释同 ANT 子任务交互。 MyEclipse 允许你去配置和定制子任务来执行和它的默认操作值。

默认的, MyEclipse EJB 工程不是自动配置使用 XDoclet 功能的。这部分展示着几步骤,使用和配置 XDoclet 支持的 firstejb EJB 工程和执行源于 Trader EJB 依赖的源代码和部署组件 XDoclet 代码生成。


 

7.1 XDoclet EJB Configuration

我们开始通过添加标准的  EJB XDoclet 配置给 firstejb 工程。这部分最后的目标是产生 XDoclet 配置,它将用于产生 ANT 脚本用于 MyEclipse 执行生产附加 EJB 部署 TraderEJB 而所需文件。


7.1.1 Basic EJBDoclet Configuration

 

  1. 打开 MyEclipse 工程属性页。右键单击 firstejb 工程在包浏览视图然后选择 Properties > MyEclipse-XDoclet  ( 查看图 8)

Figure 8. MyEclipse-XDoclet configuration page

  1. 选择   Add Standard   按钮 .
  2. 选择 Standard EJB 配置然后 OK 如图 9. 

附加的重新配置 XDoclet 模块由 MyEclipse 所提供,你可以创建你自己的自定义的 XDoclet 配置。完整自定义 XDoclet 模块的过程超出了本文档的范围。

Figure 9. Adding Standard EJB configuration

一旦 Standard EJB 模块已经被添加到列表中,用鼠标选择它来显示这个 doclets 的内容。注意 ejbdoclet   出现在左手列表的下边。子 doclets ejbdoclet   包含的下边,包含需要的和可选的子任务。许多子任务对于一个如 Trader EJB 这样的简单的无状态的绘话 Bean 都不可用。

Figure 10. Default subtasks for Standard ejbdoclet

  1. 删除不需要的子任务通过右击每个子任务,他们都在左部底下面板,然后选者 Remove.  
  2. 继续这一过程直到剩下如图 11 所示的字任务。在配置中的每一项重新描绘 EJB XDoclet 子任务。有一个链接详细说明 @ejbdoclet 和它的子任务,在 Resources 部分
  3. ( 可选的 ) 如果一个非默认的源文件夹在工程创建时被指定,以一定要更新工程相关路径属性通过元素 ejbdoclet > destDir , deploymentdescriptor > destDir fileset > src 任务 . 选择每个这些元素在左部下面的面板,那么回顾修改这些各自的属性在右下部分的面板。

Figure 11. XDoclet EJB subtasks required by Trader EJB

  1. 通过在 Build 页中选择来配置这个工程的 XDoclet 的编译文件规则。

    注意 : 如果这时一个新建的工程,编译规则被设置成默认的规则,那么你可以跳到第 9 步。

选择 Use dynamic build specification  规则如图 12 所示。

如果你用一个已存在的项目而它已包含 XDoclet 配置,那么你可以选择删除不需要的 xdoclet-build.xml 文件。它将不再需要。关于这点规则更加详细的说明请看表 2 。默认的新的工程被设置使用 dynamic build policy. 你可以须改默认设置通过   Window > Preferences > MyEclipse > XDoclet > Build 属性页。


Figure 12. XDoclet Build File Policy Configuration

 2 - Description of XDoclet build policies

Field

Description

用动态编译规范 [ 推荐 ]

指示 XDoclet 处理过程为动态的说明它的编译规范,这个规范是直接来自于项目的 XDoclet 配置属性。没有 xdoclet-build.xml 文件被创建或被需要。这项规则是被推荐的因为当枪的工程的编译环境是常常被使用。

xdoclet-build.xml 文件

指明 MyEclipse-XDoclet 属性惯例为生成一个新建的 xdoclet-build.xml 这发生在一个工程的 XDoclet 配置属性被跟新和保持时,并且 XDoclet 使用这个 xdoclet-build.xml 文件在代码生成过程中。 警告 :一个工程的 xdoclet-build.xml 文件将被当此工程的 XDoclet 配置信息被修订时产生的新版本覆盖。 这条原则仅仅用在你必须手动管理 xdoclet-build.xml 文件时。

  1. 选择   OK .  

在完成 XDoclet 配置过程将被保存在本地一个名叫 . xdoclet 的文件中。另外如果 "Use xdoclet-build.xml file" 原则被使用,那么 MyEclipse 将产程一个叫 xdoclet-build.xml 文件,里面存储你的新的 XDoclet 设置并

且文件包存在跟路径下。

这将完成基础的 XDoclet EJB 配置过程。下一个部分目标是如何配置 XDoclet EJB 子任务为了你特殊的应用服务器。


7.1.2 Configuring Application Server XDoclet (optional)

 

XDoclet 是能够生成应用程序服务器的特殊部署描述符的。这部分的目标是通过 JBoss 应用程序服务器的子标签来配置一个 XDoclet @ejbdoclet XDoclet 所支持的应用程序服务器列表可以在弹出菜单中查看到如图 13

注意 下边部分我们的目的是发布 firstejb 到本地的 JBoss 3.2 服务器上。因此我们将用 JBoss 子任务。

  1. 右击 ejbdoclet 然后从菜单中选择 Add.  
  2. doclet 子任务中选择 jboss  , 接着选择 OK 如图 12 所示。


  3. Figure 13.  Adding JBoss subtask to ejbdoclet
     
  4. 如图 14 所示摄者如下的 jboss 属性。

Version = 3.2
destDir =
src/META-INF

Figure 14.  Setting jboss subtask attributes

  1. 选择 OK .

Back to Top


7.2 Running XDoclet Code Generation

一旦你完成配置你的工程的 XDoclet 设置,你可以在任何时候运行 XDoclet 的代码生成。代表的你可以在每次改变 XDoclet EJB 的配置或应用服务器设置或当你修改任何 EJB bean 的实现类中 XDoclet 声明后去执行 XDoclet

Trader EJB 还没有被新建的 XDoclet- 声明的业务方法扩展时,现在一个好的机会去执行 XDoclet firstejb 工程中,然后测试一下新的 XDoclet 设置。 .

1.         为了载 firstejb 上运行 XDoclet 右击工程然后在菜单中选择 MyEclipse > Run XDoclet  ( 查看图 15).

Figure 15. Starting XDoclet code generation on EJB project

  1. 监视 Console 视图在 xdoclet-build 脚本中的反常信息输出。 16 描述了 XDoclet TraderBean 类被加工的过程信息。

Figure 16.  Console output of Run XDoclet action

XDoclet 完成后, firstejb 工程应该包含新版本的的 Trader TraderHome 接口和 ejb-jar.xml jboss.xml 部署描述符。图 17 描述了初始生成这个新工程的资源。

注意 : 当我们在第 5 步创建 TraderBean.java 类文件时,我们指明它的 Java package 名为 com.genuitec.trader.ejb 并且强调了报名义 ".ejb" 结尾。这是因为标准的 EJB XDoclet 包置换 (packageSubstitution) 子任务创建一个相应的  Java 包以 ".interfaces"   结尾并且添加了生成的 EJB Home 接口到其中。在我们的例子包 com.genuitec.trader.interfaces 将被创建并且它将包含 Trader EJB TraderHome 接口。如果你不按照这个包命名习惯那么 XDoclet 设置的默认的一些文件将不会被创建。

Figure 17.  Contents of EJB project before and after XDoclet generation



只有注册用户登录后才能发表评论。


网站导航:
 

posts - 0, comments - 0, trackbacks - 0, articles - 115

Copyright © 砖头