I disagree that this is the responsibility of the ACC.
[The rest of this notes is IIRC - I am not very familiar with what happens internally in this process... ] One of the first steps a JMS client performs is to obtain a ConnectionFactory, either by explicit look-up using JNDI calls or by injection which itself will use JNDI look-up. The factory object will have been set up to refer to whatever host is specified in the jms-host setting. If that is localhost, then that is how the factory object will be set up, and that is what the client will get.
I think the documentation refers, at least briefly, to the need to configure the jms host's address to refer to the host's actual address if it will be used remotely. But I'm not sure about that.
I'm transferring this to the queuing folks, not because I think there is a bug in JMS or MQ that needs fixing but for them to comment on this.
One other note - Aren't there potential problems if somehow GlassFish did automatically place the system's real name into this configuration setting and then the user tries to run disconnected from the network? I think the attempt to resolve the configured, non-"localhost" name will fail because the system cannot reach a DNS server.