Я реализовал контейнер, который управляет несколькими экземплярами DefaultMessageListenerContainer (s), которые он создает на основе прототипного экземпляра, если слушатель. На основе системного свойства (значение #) создается несколько слушателей, а очереди, которые они слушают, представляют собой числовое «my.Queue» + порядковый номер. Это, очевидно, может быть изменено, чтобы при необходимости искать имена очереди. При этом, это не динамически расширяющийся / сокращающийся список слушателей. Они создаются в начале, хотя я думаю, что вы можете использовать это в качестве отправной точки, чтобы сделать его более динамичным, если хотите.
Я написал довольно элементарный тестовый модуль и очень элементарную реализацию (многопоточность не учитывается), и, похоже, она работает.
Проект Maven можно скачать здесь -
http://dl.dropbox.com/u/7812537/StackOverflowMultipleListeners.zip
Кстати - здесь есть интересная тема - http://forum.springsource.org/showthread.php?t=69604
Я думаю, что мог бы быть способ сделать это, расширив универсальную фабрику бобов, но я не уверен, каковы ваши требования.