I don't know if JBoss JMS behaves cleanly if you shut it down in the middle of processing.
You can probably get some idea by shutting down JMS in the middle of a load test.
If you want the server to stay up during JMS processing, you have a couple of options. One is to shut down the services in the "jms" directory by renaming it to "jms#" or through JMX. You can also shut down various services (e.g. UIL2 server, MDB.stopDelivery, Queue.stop(), etc.) through JMX. It is easy to try these things via the JMX console.
If what you want to do can't be done through JMX, let me know.
Connection.setExceptionListener, the MDB already has one.