1

例如,当我们在 ejb 3 中配置侦听 JMS 队列的 MDB 实例的数量时,如下所示,

@ActivationConfigProperty(propertyName = "maxSession", propertyValue = "someNumber")

我想知道如何在 EJB 2.1 Jboss 4 中完成它。

目前我使用 xDoclet 为 MDB 生成 ejb-jar.xml,我当前的声明如下。

 * <!-- begin-xdoclet-definition -->
 * @ejb.bean name="myEjb"
 *     acknowledge-mode="Auto-acknowledge"
 *     destination-type="javax.jms.Queue"
 * what to use for max Session??

这会导致 ejb-jar.xml 中的激活配置如下

 <activation-config>
           <activation-config-property>
             <activation-config-property-name>destinationType</activation-config-property-name>
             <activation-config-property-value>javax.jms.Queue</activation-config-property-value>
           </activation-config-property>
           <activation-config-property>
             <activation-config-property-name>acknowledgeMode</activation-config-property-name>
             <activation-config-property-value>Auto-acknowledge</activation-config-property-value>
           </activation-config-property>
         </activation-config>
4

2 回答 2

0

根据xdoclet 文档

* @ejb.activation-config-property
*     name="maxSession"
*     value="someNumber"
于 2020-05-19T14:55:53.153 回答
0

您拥有的语法应该可以正常工作。如果这不起作用,我会怀疑您的 META-INF 目录中有一个部署描述符文件,该文件超出了该maxSession值。

或者,相反,如果maxSession注释没有被接受,您可能必须使用部署描述符文件,例如ejb-jar.xml文件。

于 2020-05-18T17:09:50.963 回答