Hmm, I'm looking at the messages in the JMX Console and they all have a priority of 4 so it seems that setJMSPriority is not actually setting the priority.
The section of code setting the priority looks like this:
// priority is set to an int in code above the following:
ObjectMessage objMsg = outboundSession.createObjectMessage(jmsMsg);
OK - I found that using setPriority on the MessageProducer does the job. Is the "proper" way to do it? Does setJMSPriority() on ObjectMessage actually do anything?
No, it's an FAQ, read the spec.