Because the Java JMS specifications do not specify a wire protocol, each vendor's JMS implementation is distinct and not interoperable with others.
Since Java JMS standards do not define a wire protocol, each vendor's JMS implementation is unique and incompatible with others.