I am looking at an in-VM (or in-Application) JMS implementations. ActiveMQ seems to have good support for in-vm JMS.
ActiveMQ: is an open source, Apache 2.0 licensed Message Broker and JMS 1.1 implementation which integrates seamlessly into Geronimo, light weight containers and any Java application. JMS 1.1 / J2EE 1.4 compliant, full support for JCA resource adaptors, upport for transient, persistent, transactional and XA messaging, supports in-VM, TCP, SSL, NIO, UDP, multicast, JGroups and JXTA transports, REST API, Streamlets to support web streaming support, in memory JMS provider, ideal for unit testing, JSR 77 / 88 support for easy deployment & management & hot deployment, rules based message routing via Drools.
In-VM URI example:
Other JMS Implementations
- mom4J: is a 100% pure Java® implementation of the Java Message Service (JMS)® specification, published by Sun Microsystems®. LGPL
- OpenJMS – Supports both Point-to-Point and publish-subscribe messaging models, Guaranteed delivery of messages, synchronous and asynchronous message delivery, persistence using JDBC, Local transactions, message filtering using SQL92-like selectors, Applet support, integrates with Servlet containers, and support for RMI, TCP, HTTP and SSL protocol stacks.