Jolokia uses json-simple for the JSON representation of JMX (or other) objects. For TabularData the natural representation is JSONObject, but this is not ordered (and not sorted). It's simply a map. TabulatData is copied over into JSONObject and here the ordering gets lost. There is no easy way around this, sorry.
That TabularDataSupport uses a ordered Map is an implementation detail and if you look into the JMX specs, there is no ordering implied at all (see e.g. `TabularData.keySet()`). So its IMO pure luck that it uses a LinkedHasMap internally and you can't rely on that (other implementation of TabularData could choose another approach or even TabularData in a future Java version can change this without notice).
That's probably also the reason why jconsole exhibit the same behaviour.
The only reliable solution IMO would be if ActiveMQ exports its data as a list of e.g CompositeData or the client does some sorting on the keys (like a date) so that you at least could have some ordering.
sorry ...
... roland
... roland