- 
        Couldn't load subscription status. 
- Fork 38.8k
Description
Ales Bukovsky opened SPR-10037 and commented
While using DefaultMessageListenerContainer for durable subscription listener within Grails 2.1.1 application, the exception is thrown if number of concurrent consumers is increased above 1. This is described in documentation and makes sense in "vanilla" JMS configuration.
Most JMS providers however account one way or another for high-availability solution where multiple listeners share the same subscription. For example: ActiveMQ provides concept of virtual destinations and Weblogic has sharable connection factory for this very purpose. Since the solution for shared access to a single subscription is in these cases provided by lower level (vendor-specific) implementation, concurrent consumer restrictions on teh container level effectively prevents the application from using it.
The simplest solution appears to be the container class extension that bypasses/consumes the corresponding exception. The problem is that a generic invalid argument error is being thrown and the only way to ensure it is the correct one is to actually parse exception message (which is not a good design).
It would be greatly appreciated if the container class actually provides a simple and clean way to suppress the concurrent consumer restriction should the developer explicitly wish so.
Affects: 3.1.2
Referenced from: commits 4058f69, 0933734
Backported to: 3.1.4