Thanks for the feedback. I'm now focusing on JBoss 5.1.0 upgrade to get to JBoss Messaging. Looks like there's a possibility to use JBoss Messaging in 4.2.3 in case there's too much breakage.
When you say use SpyQueue, do you mean as a work-around to looking up the Queue in JNDI (e.g. new SpyQueue("queue/Whatever")), or do you mean coding with the JBossMQ implementation, SpyConnectionFactory, etc.?
Queue lookup was the only part that works :)
I overestimated 300 servers (about 100 of them don't have JBoss), the clusters average about 10 nodes and are all JBoss 4.2.3 (and 4.0.4 many years ago). It's a lot of iron just to handle an aggregate of 4000 VoIP calls per second, the complexity is from spanning multiple data centers and icky firewalls creating fun software engineering problems :)