可以为企业 Bean 配置消息驱动的 bean 部署属性,以覆盖在应用程序 EAR 文件中定义的部署属性。
开始之前
可以让侦听器端口稳定下来。有关更多信息,请参阅有关固定功能的文章。应该只针对侦听器端口配置应用程序,以便与现有消息驱动的 bean 应用程序兼容。否则,应该针对符合 JCA 1.5 的资源配置应用程序。
如果存在使用 IBM MQ 消息传递提供程序(或符合标准的第三方 JMS 提供程序)且带侦听器端口的现有消息驱动的 Bean,而您想改为使用带侦听器端口的 EJB 3 消息驱动的 Bean,那么这些新 Bean 可以继续使用同一个消息传递提供程序。
本任务假定您有一个可以部署在 WebSphere® Application Server 中的
EAR 文件,此文件包含作为消息驱动的 Bean 开发的企业应用程序。
关于此任务
可以通过使用组装工具来配置消息驱动 bean 应用程序的部署属性。此任务中给出的详细步骤是用于 Rational® Application
Developer 的,但是其他工具也具有非常类似的步骤。
过程
- 启动组装工具。
- 编辑应用程序 EAR 文件。 例如,使用 Rational Application Developer 导入向导将 EAR 文件导入组合工具。要启动“导入”向导,请执行下列操作:
- 单击。
- 单击下一步,然后选择 EAR 文件。
- 单击完成。
- 打开要编辑的部署属性。 在“Java EE 层次结构”视图中,右键单击消息驱动的 Bean 的 EJB 模块,然后单击。 在属性窗格中显示消息驱动的 Bean 的属性对话笔记本。
- 指定一般部署属性。
- 在属性窗格中,选择 Bean 选项卡。
- 在主面板上,配置事务类型属性。
此属性确定是消息驱动的 Bean 管理它自己的事务还是容器为该 bean 管理事务。
- Bean
- 消息驱动的 Bean 管理它自己的事务。
- 容器
- 容器管理代表 bean 的事务。
- 在激活配置下,查看以下属性:
注: 对于 EJB 3 消息驱动的 Bean,您可以改为使用 EJB 3 注释来配置激活配置属性。不要使用 EJB 3 注释来更改或替换在 bean 部署描述符中指定的内容。如果在两个场所中都指定了激活配置属性,那么使用的值是在部署描述符中提供的值。
- acknowledgeMode
- 此属性确定会话如何确认其接收的任何消息。
- 自动确认
- 会话自动地确认每个消息的交付。
- 重复确定确认
- 会话惰性地确认消息的交付。如果 JMS 失败,此设置可能导致传递一些重复消息,因此只有可接受重复消息的用户应用程序才应该使用。
- destinationType
- 此属性确定消息驱动的 Bean 是使用队列还是主题目标。
- 队列
- 消息驱动的 Bean 使用队列目标。
- 主题
- 消息驱动的 Bean 使用主题目标。
- subscriptionDurability
- 此属性确定 JMS 主题预订是持久的还是非持久的。
- 持久
- 订户用 JMS 保留的唯一标识注册持久预订。用同一标识的后续订户对象以先前订户保留的状态继续预订。如果持久预订没有活动订户,那么 JMS 会保留预订的消息,直到预订接收到他们或者他们到期。
- 非持久
- 非持久预订维持的时间是其订户对象的生存期。这意味着仅当客户机订户活动时,客户机才能看到在主题中发布的消息。如果订户不活动,客户机会错过其主题上发布的消息。
非持久订户只能在创建该订户时存在的同一事务上下文(例如,全局事务或非指定的事务上下文)中使用。
- messageSelector
- 此属性确定 JMS 消息选择器,该消息选择器用于选择消息驱动的 Bean 接收哪些消息。 例如:
JMSType='car' AND color='blue' AND weight>2500
选择器字符串可引用 JMS 消息头中的字段和消息属性中的字段。消息选择器不能引用消息主体值。
- 指定绑定部署属性。
- 在 WebSphere 绑定下,指定以下属性:
- 侦听器端口名
- 输入此消息驱动的 bean 的侦听器端口名。
- 保存对部署描述符的更改:
- 关闭部署描述符编辑器。
- 提示时,单击是以表明您要保存对部署描述符的更改。
- 验证归档文件。
- 在项目的弹出菜单中,单击部署以生成 EJB 部署代码。
- 可选: 在 WebSphere Application Server 安装版本中测试已完成的模块。
右键单击模块,单击在服务器上运行,然后按照显示的向导中的指示信息进行操作。
限制: 在服务器上运行仅适用于 Windows、Linux/Intel 和 AIX® 操作系统。无法以远程方式部署到 UNIX 操作系统(如 Solaris)上的 WebSphere Application Server 安装版本。
要点: 仅将在服务器上运行用于单元测试。远程发布应用程序时,组装工具将覆盖该服务器的服务器配置文件。不要使用生产服务器。
下一步做什么
组装应用程序之后,请使用系统管理工具将 EAR 文件部署到要运行该应用程序的应用程序服务器;例如,如部署和管理应用程序中所述,使用管理控制台。