I have just experienced this problem as well. I found that restarting the OIL service through JMX was enough to release the hanging.
This was running JBoss 2.4.9 on Solaris 8 (Java HotSpot(TM) Server VM (build 1.3.1_04-b02, mixed mode))
I have also experienced hanging problems with JMS on Digital Unix, but restarting the OIL service does not help (and I don't get any errors from JMS). I am able to reproduce the problem much easier on Digital Unix and am currently trying to simplify the scenario to the extent that I can supply some reproducing code to the JBoss folks.
My initial feeling is that there is something not thread safe in the topic subscriber receive call. I find that I can reproduce the problem easier when I make receive calls that only block for 1 second and then come back in. The hanging seems to occur when two threads make the receive call at the same time.
As I said, I hope to supply more detailed information sometime soon.