在 Liberty 上开发 EJB 应用程序
Enterprise JavaBeans (EJB) 应用程序是一组 bean,它们打包为 Java™ 归档文件 (jar)、Web 应用程序归档文件 (war) 或 Java EE 企业应用程序归档文件 (EAR) 的组合。
关于此任务
WebSphere® Application Server Liberty 提供对 Enterprise JavaBeans 规范的全面支持。EJB 规范还定义了精简子集,它也是 WebSphere Application Server Liberty 中提供的可配置功能部件,另外还有一些其他可选功能部件(启用的服务器配置仅支持完整 EJB 规范的子集)。这些子集允许使用一些服务器配置,已安装应用程序未使用 EJB 规范的所有功能时,这些配置使用的资源较少。
有关使用 WebSphere Developer Tools 开发 EJB 应用程序的信息,请参阅开发 EJB 3.x 应用程序。
- Enterprise JavaBeans 核心功能部件
- ejbLite
此功能部件启用 EJB 规范中定义的 EJB 精简子集。此子集包含对写至 EJB 3.x API 的本地会话 bean 的支持。从 ejbLite-3.2 功能部件开始,此子集还包括对非持久性 EJB 计时器和异步本地接口方法的支持。
除了在 server.xml 文件中启用 ejbLite-3.2 功能部件之外,此功能部件不需要任何其他配置。
- mdb
此功能部件启用 EJB 技术的消息驱动的 Bean 子集,它类似于 ejbLite 功能部件对会话 bean 启用的支持。此功能部件未启用会话 bean,所以,如果需要会话 bean 和消息驱动的 Bean,那么需要在 server.xml 文件中启用这两个功能部件。
以下功能部件为 EJB API 提供基本功能集合:
注: Liberty 不支持 EJB 2.x API 实体 bean。为实现持久性,必须改用 Java Persistence API (JPA)。
- Enterprise JavaBeans 扩展功能部件
以下功能部件提供对核心 EJB 功能部件的扩展,它们组合到一起时提供对完整 EJB API 集合的支持:
- ejbHome
启用 EJB 2.x API 的支持,具体地说,启用对 javax.ejb.EJBLocalHome 接口的支持。与 ejbRemote 功能部件组合到一起时,javax.ejb.EJBHome 接口也是受支持的。因为没有 ejbLite 功能部件时此功能部件没什么用处,所以启用此功能部件会自动启用对应 ejbLite 功能部件。
除了在 server.xml 文件中启用此功能部件之外,没有任何其他配置对此功能部件可用。
- ejbPersistentTimer
启用对持久性 EJB 计时器的支持。启用此功能部件会自动启用对应 ejbLite 功能部件。
除了在 server.xml 文件中启用此功能部件外,还必须配置数据源以便为计时器提供持久性存储。缺省情况下会使用 DefaultDataSource,因此只有该配置是必需的。
- ejbRemote
启用对远程 EJB 接口的支持。启用此功能部件会自动启用对应 ejbLite 功能部件。
除了在 server.xml 文件中启用此功能部件之外,此功能部件不需要任何其他配置。
- Enterprise JavaBeans 便利功能部件
以下功能部件提供一种便利方法来启用完整 EJB API 集合:
- ejb
对所配置功能部件的规范级别启用所有核心和扩展功能部件。例如,ejb-3.1 启用 ejbLite-3.1 和 mdb-3.1。除了因为启用所有核心和扩展 EJB 功能部件而提供的支持外,此功能部件未提供任何其他支持。
除了在 server.xml 文件中启用此功能部件之外,此功能部件不需要任何其他配置。
过程
<featureManager>
<feature>ejbLite-3.2</feature>
</featureManager>