I propose that the Java EE platform should require the container to create a default connection factory which provides access to the platform default JMS provider and bind this to a well-known place in the application server's JNDI store. Applications would access this connection factory just like any other connection factory (e.g. using @Resource annotations).
This would remove the need for the deployer to create this connection factory in a large proportion of cases. It would also provide frameworks (including CDI producer methods) to obtain a connection factory without the need for a JNDI name to be specified by the application.
This requirement would only apply to Java EE profiles which require a JMS provider to be provided by the application server (such as the full profile).
This proposal is supported by the JSR 343 (JMS 2.0) expert group, and is issue