ler )向部署人员表明这些 resource-env-ref s 实际上应当绑定到同一个目标。
清单 2. 显示 resource-env-ref 的部署描述符代码片段
<ejb-jar>
<enterprise-beans>
<session>
<ejb-name>SenderEJB</display-name>
...
<resource-env-ref>
<resource-env-ref-name>jms/target</resource-env-ref-name>
<resource-env-ref-type>javax.jms.Queue</resource-env-ref-type>
</resource-env-ref>
...
</session>
<session>
<ejb-name>ReceiverEJB</display-name>
...
<resource-env-ref>
<resource-env-ref-name>jms/source</resource-env-ref-name>
<resource-env-ref-type>javax.jms.Queue</resource-env-ref-type>
</resource-env-ref>
...
</session>
</enterprise-beans>
</ejb-jar>
获得消息: J2EE 1.4 中的消息(3)
时间:2011-03-11 IBM David Currie
在 J2EE 1.4 中,仍然可以使用 resource-env-ref 定义目标,不过,还有一个与 resource-env-ref 非常类似的新元素 message-destination-ref ,它还有两个子元素。其中第一个是 message-destination-usage ,正如它的名字所表明的,它用于向部署人员表明应用程序准备如何使用目标。它可以取以下的值中的一个:
Produces
Consumes
ProducesConsumes
因而部署人员通常会将 Produce 的引用和另一个 Consume 的引用绑定到同一个目标上。
增加的第二个元素是 message-destination-link 。它可用于将两个或者更多 message-destination-ref 联系到一起。在 link 中包含的名字必须与在另一个新元素—— message-destination ——中给定的名字相匹配。部署应用程序后,部署人员将一个 message-destination 绑定到一个 JMS 目标,所有 message-destination-ref s 都使用这同一个绑定。
因此在 J2EE 1.4 中,清单 2 中的例子现在可以改写为如清单 3 所示的形式。
清单 3. 带有 message-destination-ref 和 message-destination 元素的部署描述符代码片段
<ejb-jar>
<enterprise-beans>
<session>
<ejb-name>SenderEJB</display-name>
...
<message-destination-ref>
<message-destination-ref-name>jms/target</message-destination-ref-name>
<message-destination-type>javax.jms.Queue</message-destination-type>
<message-destination-usage>Produces</message-destination-usage>
<message-destination-link>destination</message-destination-link>
</message-destination-ref>
...
</session>
<session>
<ejb-name>ReceiverEJB</display-name>
...
<message-destination-ref>
<message-destination-ref-name>jms/source</message-destination-ref-name>
<message-destination-type>javax.jms.Queue</message-destination-type>
<message-destination-usage>Consumes</message-destination-usage>
<message-destination-link>destination</message-destination-link>
</message-destination-ref>
...
</session>
</ent
|