There is no way the JBossMQ server could detect that a client is gone (the network could be temporary down or under heavy load). So a client ID cannot be release when the client crashes.
Also the spec. expects that when a client ID is already specified (by JBossMQ) you cannot change it. So I would suggest that you expect that a setClientID() fails and use another client ID instead.
Have fun - Andy