スタンドアロン アプリケーションを周囲にコンテナなしで実行すると、@Resource
インジェクションは機能しません。代わりに、接続ファクトリとキュー/トピックの両方に対して手動で JNDI ルックアップを行う必要があります。
例:
final Properties initialContextProperties = new Properties();
final String factory = "jms/ConnectionFactory";
final String queueName = "jms/Queue";
//
final InitialContext ic = new InitialContext(initialContextProperties);
final QueueConnectionFactory qcf = (QueueConnectionFactory) ic
.lookup(factory);
final Queue queue = (Queue) ic.lookup(queueName);
の構成についてはInitialContext
、こちらをご覧ください: Glassfish V3.x およびリモート スタンドアロン クライアント