You could just use a regular embedded server. Look at the embedded examples.
As for caching... you would need to install a JCA adapter for that. The new JCA adapter being written for JBoss is also emeddable. However if you just use your connections, consumers and producers properly you won need to cache any connections.
+1 to clebert.
There's rarely a need for a caching framework, if you maintain your own refs to sessions, connections etc appropriately.