We do not answer design questions here. Only technical questions.
If you want help with design, hire a consultant.
I trust you'll forgive my imposition. I have seen many questions in this forum about the use of the singleton configuration, and I consider this a variant on the theme. Perhaps you can answer my jboss specific question:
Is it possible to intercept a message when it is being pulled off a queue before the MDBs get to it, by placing a custom interceptor in the stack. How might this be done?
Just create your own message driven bean container-configuration
that includes the interceptor and reference it from your mdb in META-INF/jboss.xml
Or even simpler, modify the standard container in conf/standardjboss.xml
More portably, change your mdb into a something that implements the
chain of responsibilty pattern.