JMS 接続は接続プールから供給されます。これは、Queue 接続ファクトリに対する getConnection() の呼び出しが高速であることを意味します。
8.1 よりも前のバージョンでは、サーブレットまたは EJB コンポーネントとの接続の再利用が可能でした。つまり、サーブレットはその init() メソッド内で getConnection() を呼び出し、その後連続的に、各サーブレット呼び出しに対して getSession() を呼び出すことができました。グローバルトランザクションの内部で JMS を使用する場合、そのような呼び出しは機能しなくなりました。アプリケーションは各接続に対し getSession() を一度だけ呼び出すことができます。その後、接続をクローズする必要があります (これは実際には接続をクローズするのではなく、接続をプールに戻すだけである)。これは、移植性のある J2EE 1.4 アプリケーションの一般的な特徴です。Sun Java System Application Server では、以前の (J2EE 1.3 ベースの) アプリケーションサーバーでは施行されていなかったその制約を施行します。