Хм, у нас не было поддержки JMX в 3.1.2.Лично я никогда не пытался подключить MDB к двум очередям - вроде как удивился, что это сработало.Это ActiveMQ, который выполняет фактическое "подключение очереди" (стандартная работа соединителя JMS), мы просто передаем метаданные.
На стороне OpenEJB единственное волшебство, которое мы делаем, это попытка заполнитьв настройках destination
и destinationType
через @ActivationConfigProperty
, если вы этого еще не сделали.Мы установим destination
на ваше имя бина, если оно не заполнено, и установим destinationType
на javax.jms.Queue
, если оно не заполнено.
Так что ваш бин, по сути, будет выглядетьвот так, если бы все было установлено явно.
@MessageDriven(
name="InboundXMLQueueHandlerST,InboundXMLQueueHandlerMT",
activationConfig = {
@ActivationConfigProperty(
propertyName = "destinationType",
propertyValue = "javax.jms.Queue"),
@ActivationConfigProperty(
propertyName = "destination",
propertyValue = "InboundXMLQueueHandlerST,InboundXMLQueueHandlerMT")})
public class InboundXMLQueueHandler implements MessageListener {
...
Предполагая, что ActiveMQ фактически предоставлял вам обе очереди, это - ActivConfig, который сделает это.
Вероятно, самая простая вещь, которую нужно попробовать, это явноустановите имя получателя и просто удалите имя компонента.
@MessageDriven(
activationConfig = {
@ActivationConfigProperty(
propertyName = "destination",
propertyValue = "InboundXMLQueueHandlerST,InboundXMLQueueHandlerMT")})
public class InboundXMLQueueHandler implements MessageListener {
...