「Java EE开发指南」如何在MyEclipse中开发EJB 2 Session Bean?(二)

本文介绍了开发符合EJB 2.0的Java EE Enterprise Java Beans所需的基本特性、概念和技术。在本教程中,您将学习如何:

  • 创建EJB项目
  • 创建会话EJB
  • 将项目配置为使用XDoclet代码生成
  • 打包并部署会话EJB

该特性在MyEclipse中可用。在上文中我们为大家介绍了如何创建一个EJB项目和会话EJB - Part 1(点击这里回顾>>),本文将继续介绍如何为XDoclet支持配置项目,欢迎持续关注我们获取更多中文教程!

MyEclipse v2025.2离线版下载

三、为XDoclet支持配置项目

默认情况下,MyEclipse EJB项目没有配置为使用XDoclet特性。本节介绍启用和配置具有XDoclet支持的firstjb EJB项目的步骤,以及执行XDoclet代码生成来派生Trader EJB的依赖源代码和部署组件的步骤。

首先将Standard EJB XDoclet配置添加到第一个EJB项目,本节的最终目标是生成用于创建ANT脚本的XDoclet配置,MyEclipse执行ANT脚本来生成部署Trader EJB所需的附加EJB构件。

  1. 右键单击firstjb,然后选择Properties。展开MyEclipse,并选择XDoclet。

XDoclet配置页面

  1. 单击Add Standard,选择Standard EJB,然后单击OK。

注意:除了MyEclipse提供的预配置XDoclet模块之外,您还可以创建自己的自定义XDoclet配置。

添加标准EJB配置

将Standard EJB模块添加到列表后,选择它来显示包含的文档。注意ejbdoclet出现在左下角的列表中,ejbdoclet下的子文档包含必需的和可选的子任务,许多子任务不适用于简单的无状态会话bean(如Trader EJB)。

标准ejbdoclet的默认子任务

  1. 删除不需要的子任务,直到只剩下下图所示的列表。要删除,右键单击每个子任务,然后选择Remove,此配置中的每个项都表示EJB XDoclet子任务。

Trader EJB所需的XDoclet EJB子任务

  1. (可选)如果您在创建项目时指定了非默认源文件夹,则必须更新以下元素的项目相对路径属性ejbdoclet>destDir, deploymentdescriptor>destDir和fileset>src tasks。在左下角面板中选择每个元素,然后在右下角面板中查看和修改它们各自的属性。

  2. 单击Build选项卡来配置项目的XDoclet构建文件策略。

注意:如果这是一个新项目,则Build策略设置为默认策略,因此您可以跳到步骤7。

  1. 选择Use dynamic build specification policy选项。

如果使用的是已经包含XDoclet配置的现有项目,可以选择删除不必要的xdoclet-build.xml文件。有关这些策略的更详细解释,请参见下表。默认情况下,将新项目设置为使用动态生成策略,您可以在此参数页面上覆盖项目的此默认值。

XDoclet构建文件策略配置

警告!当修改项目的XDoclet配置属性时,项目的xdoclet-build.xml文件将被新版本覆盖。仅当需要手动管理xdoclet-build.xml文件时,使用Use XDoclet-build.xml策略。

  1. 单击OK。XDoclet配置保存到名为.xdoclet的文件中,此外如果启用了"Use xdoclet-build.xml file"构建策略,那么MyEclipse将从XDoclet设置生成一个名为xdoclet-build.xml的文件,并将该文件存储在项目的根文件夹中。
3.2 配置应用服务器XDoclet(可选)

XDoclet能够生成特定于应用服务器的部署描述符,本节将在下面演示con3。

注意:稍后您将看到将firstjb部署到本地JBoss服务器的步骤,因此这些步骤使用JBoss子任务。

  1. 右键单击firstjb,选择Properties,展开MyEclipse,然后选择XDoclet。

  2. 选择Standard EJB来查看任务。右键单击ejbdoclet,并选择Add。

  3. 选择jboss,并单击OK。

向ejbdoclet添加JBoss子任务

  1. 选择jboss子任务,双击destDir属性,在Value字段中输入src/META-INF,然后单击OK。

设置jboss子任务属性

  1. 单击Properties窗口上的OK。
相关推荐
云和数据.ChenGuang6 小时前
Python 重写(Override)深度解析:从 MRO 到 super() 的完整机制
java·开发语言·人工智能·python·langchain·1024程序员节
摇滚侠7 小时前
《On Java 中文版 基础卷》阅读笔记 实现隐藏 12
java·数据库·笔记
silvamux_9 小时前
10款模型写种草笔记:可发布性、返工来源与成本数据缺口复盘
java·数据库·笔记
步行cgn10 小时前
StringHttpMessageConverter 详解:Spring MVC 中字符串读写的默认转换器
java·spring·mvc
摇滚侠10 小时前
《On Java 中文版 基础卷》阅读笔记 实现隐藏 11
java·笔记·python
小蒜学长10 小时前
基于Spring Boot+Vue3的在线医疗咨询系统的设计与实现(代码+数据库+LW)
java·spring boot·后端·在线问诊·在线医疗咨询系统
Deng桑10 小时前
SpringAI写第一个Agent-把工单循环跑起来
java·agent·工具调用·spring ai
步行cgn12 小时前
@ResponseBody 详解:Spring MVC 中把返回值直接写入响应体
java·spring·mvc
keren213 小时前
SceneDock:Windows 场景化工作台——一键启动工作链,还能被 AI Agent 调用(CLI / MCP)
windows·开发工具·效率工具·mcp
jason成都13 小时前
RTKLIB 的 Java 移植版来了:rtklib-java v3.3.0 功能全景
java·gnss·rtklib·rtklib_java