我在独立环境中使用 Spring3.1。
我以这种方式使用 jms 模板设置主题:
<bean id="mm1sessionsTopicSendingTemplate" class="org.springframework.jndi.JndiObjectFactoryBean"
depends-on="jmsServerManagerImpl">
<property name="jndiName">
<value>/topic/mm1sessionsTopic</value>
</property>
</bean>
对于本主题,我以这种方式使用 DefaultMessageListenerContainer 设置 MDB:
<bean id="mm1sessionDispatcherListener"
class="org.springframework.jms.listener.DefaultMessageListenerContainer">
<property name="connectionFactory" ref="connectionFactory" />
<property name="pubSubDomain" value="true" />
<property name="concurrentConsumers" value="1" />
<property name="destination" ref="mm1sessionsTopicSendingTemplate" />
<property name="messageListener" ref="mm1SessionMDB" />
<property name="sessionAcknowledgeModeName" value="AUTO_ACKNOWLEDGE" />
</bean>
这样,我必须通过 xml 高级设置 mm1SessionMDB:
<bean id="mm1SessionMDB" class="com.mdb.SessionMDB">
<property name="feedPropertiesDTO" ref="feedListenerMarketMaker1Properties" />
</bean>
但我需要我的应用程序以编程方式创建 MDB 实例。
我的意思是我想通过代码创建 mdb,因为每个 MDB 将对将从主题中检索到的消息具有不同的验证值(通过 feedPropertiesDTO)
基本上,我将拥有一组具有相同逻辑的 MDB,但每个都有不同的属性。MDB 的创建时间必须在运行时。
那可能吗?
谢谢,雷。