If I don't need transactionality or AOP, is there reason to prefer JBossCache to the DistributedHashtable building block in the JGroups package?
Yes, multiple repl modes in JBossCache. Also, more config options, e.g. isolation level (even without TXs), cache loaders etc.