Closing a session (created with AUTO_ACKNOWLEDGE) while it's processing a message handler on a different thread results in:
SpyJMSException: Cannot acknowledge a message
at org.jboss.mq.Connection.asynchFailure(Connection.java:350)
According to the javadoc for Session:
"The close method is the only session method that can be called while some other session method is being executed in another thread"
Hmmm....