Web サービス・アトミック・トランザクションの構成

Web Services Atomic Transaction (WS-AT) は OASIS 標準です。 現在、このフィーチャーは Liberty でサポートされています。

このタスクについて

Liberty で Web Services Atomic Transaction (WS-AT) を構成する前に、それを有効にする必要があります。 このタスクでは、Liberty で WS-AT フィーチャーを有効にする方法と、WS-AT フィーチャーに異なる構成を追加する手順も説明します。 さらに、タイプ UOWSynchronizationRegistry.UOW_TYPE_LOCAL_TRANSACTIONUOWManager を使用し、 現行グローバル・トランザクションの有効範囲外でコードを実行できます。

Liberty に WS-AT フィーチャーを追加していないが、アプリケーションに以下のいずれかの情報がある場合は、例外メッセージが表示されます。 Liberty ログに、WS-AT フィーチャーがインストールされていないことがメッセージで示されます。
  • WSDL の WS-Transaction ポリシー情報
  • Web Services Soap ヘッダーの Web Services Atomic Transaction 調整コンテキスト情報

Liberty で WS-AT フィーチャーを有効にして構成するには、以下のステップを行います。

手順

  1. Liberty で WS-AT フィーチャーを有効にするには、server.xml ファイルの featureManager エレメントに以下のエントリーを追加します。
    <feature>wsAtomicTransaction-1.2</feature>
  2. オプション: WS-AT フィーチャーの特別な構成を追加します。 以下のようにして、WS-AT 内部 2PC プロトコル通信の SSL またはプロキシー・エンドポイントを構成できます。
    <wsAtomicTransaction SSLEnabled="false" SSLRef="defaultSSLConfig" externalURLPrefix="" clientAuth="false"/> 

詳しくは、『server.xml ファイルでの SSL またはプロキシー・エンドポイントのパラメーターの構成』を参照してください。

  1. オプション: 現行グローバル・トランザクションの有効範囲外でトランザクションを実行するには、クライアント・サイドに以下のコードを追加します。
    UOWManager uowManager = (UOWManager) ctx
        .lookup("java:comp/websphere/UOWManager");
    uowManager
        .runUnderUOW(
            UOWSynchronizationRegistry.UOW_TYPE_LOCAL_TRANSACTION,
    	 false, new UOWAction() {
              public void run() throws Exception {
    	     ...
    	     // Example code
    	     callService1(service1, wsTransactionEnd1);
    	     ...
    	   } 
    	  }); 

トピックのタイプを示すアイコン タスク・トピック

ファイル名: twlp_dep_wsat_config_lib.html