注意:この機能は、早期採用者製品 (Early Adopter Product; EAP) リリース ステータスに提供されます。機能の最終版については、今後リリースする予定です。詳細については、
Micro Focus SupportLine までお問い合わせください。
 CICS Web サービス機能は、開発およびテストでの使用を目的とした早期採用者製品 (Early Adopter Product; EAP) です。本製品リリースでは、この機能は製品のディプロイ用には推奨されません。
 
	  
 
	 制限事項:本トピックは Windows 環境にのみ該当します。 
 
	 このチュートリアルでは、ボトムアップ メソッドを使用して、既存の CICS COBOL アプリケーションを Web サービスとして公開します。
 
	 前提条件
 
		 
		このチュートリアルの「LOANPAYM Web サービス プロバイダーのテスト」を実行するために、SOAPui Eclipse プラグイン (sourceforge.net から入手可能) をダウンロードしてインストールすることをお奨めします。
 
		このチュートリアルでは、Eclipse プロジェクトが [Build Automatically] に設定されていることを前提としています。設定されていない場合は、メイン メニューで [Project > Build Automatically] をクリックして、この機能をオンにしてください。
 
	  
 
	 LoanDemo プロジェクトの作成 
 
		 
		CICSWebServicesTemplate テンプレート プロジェクトを使用して、CICS Web サービス用の Eclipse プロジェクトを作成します。
 
		  - Enterprise Developer のメイン メニューで、[File > New > Mainframe COBOL Project] をクリックします。
 
 
		  - [Project name] フィールドに「LoanDemo」と入力します。
 
 
		  - [Browse for template] をオンにします。
 
 
		  - [Location] フィールドに対応する [Browse] ボタンをクリックします。次に、CICSWebServicesTemplate テンプレート プロジェクト フォルダーをブラウズして選択し、[OK] をクリックします。
 
 
		  - [Use default location] をオンにして、[Finish] をクリックします。
COBOL エクスプローラーに LoanDemo プロジェクトが表示されます。このプロジェクトは、Eclipse によって自動的にビルドされます。
 
		   
 
		
 
	  
 
	 WSDL ファイルおよび WSBIND ファイルの生成
 
		 
		CICS Web サービスの新規作成ウィザードを使用して、Web サービスのコンポーネントを生成します。
 
		  - COBOL エクスプローラーで、[LoanDemo] プロジェクトをクリックして選択します。
 
 
		  - [File > New > CICS Web Service] をクリックします。[New CICS Web Service Wizard] が起動します。
注:[CICS Web Service] が表示されない場合は、[
Other] を選択します。次に、[
CICS Web Service] を見つけて選択します。
 
 
		   
 
		  - [Service type] ドロップダウン リストから [CICS Web Service (Bottom-Up)] を選択し、[Next] をクリックします。
[Project] フィールドに [LoanDemo] というプロジェクト名が表示されます。
 
		   
 
		  - [Program location] フィールドに対応する [Browse] ボタンをクリックし、cbl プロジェクト フォルダー内にある LOANPAYM.cbl ファイルに移動します。
 
 
		  - LOANPAYM.cbl をダブルクリックします。これにより、[Program location] フィールドに値が入力され、[Program name] フィールドにプログラムで定義されている名前が入力されます。
 
 
		  - [Service location] フィールドに次を入力します。
http://localhost:5482/cics/services/loanpaym
 
			 これは、Web サービスの呼び出しに使用するエンドポイント URL です。これによって、サーバー、ポート、および Enterprise Server で Web サービスを識別するために使用される URI を指定します。
 
			 LOANPAYM プログラムには COMMAREA インターフェイスが含まれています。したがって、[Program Interface] フィールドのデフォルト設定をそのまま使用できます。
 
		   
 
		  - [Next] をクリックします。
デフォルトでは、ウィザードにより、プログラム名とそれに続くOperationで構成される操作名が割り当てられます。
 
			 Web サービスの要求構造および応答構造は、LoanDemo プロジェクトの 2 つのコピーブックに含まれています。
 
		   
 
		  - [Request structures] フィールドに対応する [Browse] ボタンをクリックし、cpy プロジェクト フォルダーをブラウズします。
 
 
		  - [LOANINP] を選択してから [OK] をクリックします。
 
 
		  - 前の 2 つのステップの手順を繰り返して、LOANOUT コピーブックを [Response structures] フィールドに追加します。
 
 
		  - [完了] をクリックします。
 
 
		
 
		LoanDemo プロジェクトで、[Web Services > LOANPAYM > LOANPAYMOperation] のエントリが表示されます。
 
		loadlib プロジェクト フォルダーには、次の生成ファイルが格納されています。
 
		   
			 - LOANPAYM.wsbind
 
 
			 - SOAP 要求を LOANIN.cpy 内のデータ構造にマッピングし、LOANOUT.cpy 内のデータ構造を SOAP 応答メッセージにマッピングするバインド ファイル。
 
 
		   
		   
			 - LOANPAYM.wsdl
 
 
			 - LOANPAYM アプリケーションを記述する Web サービス定義ファイル。
 
 
		   
		
 
	  
 
	 エンタープライズ サーバー リージョンの構成
 
		 
		このチュートリアルでは、CWSPROV エンタープライズ サーバー リージョン (「チュートリアル:CICS Web サービス プロバイダー、トップダウン メソッド」で作成) を使用して、Web サービス プロバイダーを実行します。
 
		次のいずれかを実行します。
 
		  -  「チュートリアル:CICS Web サービス プロバイダー、トップダウン メソッド」を完了していない場合は、このセクションの手順をスキップし、「チュートリアル:CICS Web サービス プロバイダー、トップダウン メソッド」に戻り、「エンタープライズ サーバー リージョンの作成」および「CWSPROV リソースの構成」の各節を完了します。ただし、新しいリージョンを関連付けるプロジェクトを選択する際、Reverse プロジェクトではなく LoanDemo プロジェクトをオンにします。
 
 
		  - 「チュートリアル:CICS Web サービス プロバイダー、トップダウン メソッド」の実行時に CWSPROV を作成および構成した場合は、このセクションの手順に従って、LoanDemo プロジェクトに適切に関連付けます。
 
 
		
 
		   
			 - dfhdrdat ファイルの更新
 
 
			 - Enterprise Developer サーバー エクスプローラーからエンタープライズ サーバー リージョンを作成すると、プロジェクトの system\dfhdrdat ファイルに特定の構成情報が格納されます。したがって、この情報を使用して LoanDemo プロジェクトを更新する場合には、Reverse プロジェクトから LoanDemo プロジェクトにファイルをコピーできます。 
 
				  - COBOL エクスプローラーで、Reverse プロジェクトを展開し、system\dfhdrdat ファイルを見つけます。
 
 
				  - [dfhrdat] を右クリックし、[Copy] を選択します。
 
 
				  - LoanDemo プロジェクトを展開し、system\dfhdrdat ファイルを見つけます。
 
 
				  - [dfhrdat] を右クリックし、[Paste] を選択します。
 
 
				  - プロンプトで [Yes] を選択して、既存のファイルを上書きします。
 
 
				
 
			  
 
		   
		   
			 - LoanDemo プロジェクトの関連付け
 
 
			 - 前のチュートリアルで、リージョンを作成する手順中にプロジェクトをエンタープライズ サーバー リージョンに関連付けました。ここで使用しているリージョンは Reverse プロジェクトにすでに関連付けられているため、関連付けを LoanDemo プロジェクトに変更する必要があります。 
 
				  - サーバー エクスプローラーで、[CWSPROV] を右クリックし、[Associate with project] を選択します。
 
 
				  - [Reverse] をクリックして、関連付けを削除します。
 
 
				  - ステップ 1 を繰り返します。
 
 
				  - [LoanDemo] をクリックして、関連付けを作成します。
 
 
				  - サーバーを再起動するよう求めるプロンプトが表示された場合は、[Yes] を選択します。プロンプトが表示されない場合は、[CWSPROV] を右クリックし、コンテキスト メニューから [Start] を選択します。
 
 
				
 
			  
 
		   
		
 
	  
 
	 リソースの確認
 
		 
		CWSPROV の起動後、定義したリソースがインストールされてアクティブになっていることを確認します。
 
		   
			 - Enterprise Server を起動します。
 
 
			 -  
 
				  - サーバー エクスプローラーで [Local [localhost:86]] を右クリックし、[Open Administration Page] を選択します。
注:サーバーを初めて起動した場合は、サインオン ダイアログ ボックスが表示されます。[Store Credentials] がオンになっている場合は、オフにしてから、[OK] をクリックします。[Store Credentials] をオフにすると、次回のリージョンの起動から、このダイアログ ボックスが表示されなくなります。Secure Storage のプロンプトが表示された場合は、[
No] をクリックします。
 
 
					 ホーム ページのリストに CWSPROV エンタープライズ サーバー リージョンが表示されます。
 
				   
 
				
 
			  
 
		   
		   
			 - ESMAC の起動
 
 
			 -  
 
				  - Enterprise Server Administration ホーム ページで、CWSPROV リージョンの [Status] 列にある [Details] ボタンをクリックします。
 
 
				  - [Server > Control] ページで、[ES Monitor & Control] をクリックします。定義されたリソースを表示できる ESMAC ユーティリティが起動します。
 
 
				
 
			  
 
		   
		   
			 - 定義されたリソースの表示
 
 
			 -  
 
				  - ESMAC メニューで、[Resources] の下にあるドロップダウン リストから [Active] を選択します。
 
 
				  - [WebSvc] ボタンをクリックします。[LOANPAYM] Web サービスが [ENABLED] としてマークされてリストに表示されます。
 
 
				  - [LOANPAYM] Web サービスに対応する [Details] ボタンをクリックします。
[WSBIND] および [Endpoint] の値に注目してください。これらの値は、プロジェクトに格納されている情報によって決定されます。
 
				   
 
				  - ESMAC メニューで、[Pipeline] をクリックします。次に、[PROVPIPE] に対応する [Details] ボタンをクリックします。パイプライン リソースは、応答の待機期間を設定し、SOAP 構成ファイルおよび Web サービス ディレクトリを識別します。
 
 
				  - ESMAC メニューで、[URIMAP] をクリックします。次に、[PIPELINE] および [/cics/services/loanpaym] に対応する [Details] ボタンをクリックします。
Enterprise Server によって、要求の処理に必要な情報を CICS に提供するための URIMAP が生成されます。生成される各 URIMAP の名前はポンド記号 (£) で始まります。
 
					 プロバイダー CICS Web サービスを実行するには、要求をエンタープライズ サーバー リージョンにルーティングするエンドポイント URL に SOAP 要求を送信します。エンドポイント URL には URI 値が含まれています。着信要求は、[Path] 値がエンドポイント URL の [URI] 値と一致するマップを識別するために、インストールされている URIMAP を読み取ります。正しい URIMAP が識別されると、CICS は、[Web Service] の名前および関連する [Pipeline] など、URIMAP で定義されているデータを使用して、要求を処理します。
 
				   
 
				
 
			  
 
		   
		
 
	  
 
	 LOANPAYM Web サービス プロバイダーのテスト 
 
		 
		すべてのリソースがアクティブな状態で Web サービス プロバイダーが実行されたので、Web サービスを実行するための SOAP 要求を送信できます。これは、SOAPui Eclipse プラグインなどの SOAP リクエスター ツールを使用して実行できます。
 
		  - 次を含む SOAP 要求を作成します。
			 
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
                  xmlns:loan="http://tempuri.org/LOANPAYM">
   <soapenv:Header/>
   <soapenv:Body>
      <loan:LOANPAYMOperation>
         <loan:LOANINP>
            <loan:principal>50000</loan:principal>
            <loan:loanterm>180</loan:loanterm>
            <loan:rate>5.56</loan:rate>
         </loan:LOANINP>
      </loan:LOANPAYMOperation>
   </soapenv:Body>
</soapenv:Envelope>
 
		   
 
		  - SOAP 要求を次のエンドポイント URL に送信します。
http://localhost:5482/cics/services/loanpaym 
			 
 
			 次の SOAP 応答が返されます。
 
			 <SOAP-ENV:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
                           xmlns:loan="http://tempuri.org/LOANPAYM" 
                           xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
   <SOAP-ENV:Body>
      <LOANPAYMOperationResponse xmlns="http://www.LOANPAYM.com">
         <LOANOUT>
            <monthlyPayment>$410.13</monthlyPayment>
         </LOANOUT>
      </LOANPAYMOperationResponse>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>