Interstage Application Server J2EE ユーザーズガイド
目次 索引 前ページ次ページ

第5部 JMS編> 第21章 JMSアプリケーションの開発> 21.2 作成方法> 21.2.8 グローバルトランザクション

21.2.8.3 グローバルトランザクションを使用したSenderの作成

[グローバルトランザクションのSender]

public class Sender {
  public static void main() {
      ...
      try {
          InitialContext initialContext = new InitialContext();                                       /* 1 */
          QueueConnectionFactory queueConnectionFactory = (QueueConnectionFactory)
              initialContext.lookup("java:comp/env/jms/QueueConnectionFactory");                      /* 2 */
          Queue queue = (Queue)initialContext.lookup("java:comp/env/jms/Queue");                      /* 3 */
          javax.transaction.UserTransaction ut = 
              (javax.transaction.UserTransaction)initialContext.lookup("java:comp/UserTransaction");  /* 4 */
          QueueConnection queueConnection = queueConnectionFactory.createQueueConnection();           /* 5 */
          QueueSession queueSession = queueConnection.createQueueSession(true , 0);                   /* 6 */
          QueueSender queueSender = queueSession.createSender(queue);                                 /* 7 */
          ut.begin();                                                                                 /* 8 */
          queueSender.send(Message);                                                                  /* 9 */
          ut.commit();                                                                                /* 10 */
          queueConnection.close();                                                                    /* 11 */
      } catch( Exception e ) {
          ...
      }
      ...
  }
}

 1. JNDIの開始コンテキストを構築する。
 2. QueueConnectionFactoryオブジェクトを取得する。(JNDI名が“QueueConnectionFactory”の場合)
 3. Queue オブジェクトを取得する。(JNDI名が“Queue”の場合)
 4. ユーザトランザクションオブジェクトを取得する。
 5. QueueConnectionを作成する。
 6. QueueSessionを作成する。
 7. QueueSenderを作成する。
 8. グローバルトランザクションを開始します。
 9. メッセージを送信する。
 10. グローバルトランザクションを完了します。
 11. QueueConnectionをクローズする。


 JNDIの開始コンテキスト構築時の環境プロパティの指定については、“J2EEアプリケーションクライアント”を参照してください。


目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2005