Ok, as per ActiveMQ docs, it appears that Message.getJMSTimestamp() returns time that client claims it sent the message (with its local clock). And that there is supposedly property "JMSActiveMQBrokerInTime" that is added to Message (see http://activemq.apache.org/activemq-message-properties.html). However, trying to access it on an ActiveMQ 4.1.2 installation gives an error.
Does anyone know if this is something that was only added in 5.0 or later? Or is there some other explanation as to where it might have disappeared? Message.getPropertyNames() returns empty enumeration, which could indicate that nothing gets through.