You can use JMS APIs without EJB/MDB, or you can write straight to the MQ-Series client APIs. Code written to JMS should survive a change to another messaging product, while code written to MQ-Series would not. I use a vendor framework that generates MQ-Series client code from Rose models. It's pretty slick.
A good question is never answered. It is not a bolt to be tightened into place but a seed to be planted and to bear more seed toward the hope of greening the landscape of the idea. John Ciardi