JMS
From Mugshot Developer Wiki
JMS is Java Message Service, see the official page.
We use JMS through some wrapper classes, found in the com.dumbhippo.jms package. The problem is that the normal JMS API throws a checked JMSException from every single method, and these are all vague impossible-to-handle-because-who-knows-what-they-even-mean exceptions. Our JMS convenience wrappers avoid throwing exceptions by just blocking until the operation completes; they reset the connection on error if necessary, then continue blocking.
JMS implementations can be arbitrarily complicated but the API as we use it amounts to two operations, "put Java object in message queue" and "get Java object out of message queue." If you invent new messages look at some of our existing message queues for naming and style conventions.

