JMS - это Java API, для работы с очередями сообщений, реализуя, так скажем, "Event-driven" архитектуру.
AMQP, ActiveMQ - это протоколы. Многие путают, но разница в том, что JMS - все-таки, часть спецификации Java API, и описывает API для взаимодействия с очередями. В то время как остальные описывают протокол сообщений между узлами.