Cosminexus V9 BPM/ESB基盤 サービスプラットフォーム 開発ガイド 受付・アダプタ定義編

[目次][用語][索引][前へ][次へ]

付録G.1 設定例1(HTTPサーバからHTTPクライアントにファイルをダウンロードする)

<この項の構成>
(1) 設定例の概要
(2) 実行環境(テスト環境)のセットアップ
(3) 開発環境のセットアップ
(4) 各種定義ファイルの設定
(5) HTTPアダプタの定義
(6) ビジネスプロセスの追加
(7) HTTP受付の追加
(8) ビジネスプロセスの定義
(9) データ変換の定義
(10) ビジネスプロセスを実行するための準備
(11) ビジネスプロセスの実行

(1) 設定例の概要

この設定例では,次のような処理を行うビジネスプロセスを定義します。

  1. HTTPアダプタからhostAのHTTPサーバにアクセスして,ホスト内のファイル(test.bmp)を作業フォルダ内にダウンロードします。
  2. HTTP受付を経由して作業フォルダからHTTPクライアントにtest.bmpをダウンロードします。
(a) 環境構成

この設定例で作成する環境の構成を次の図に示します。

図G-1 設定例1で作成する環境の構成

[図データ]

この設定例では,図中の点線で囲まれた部分の定義手順について説明します。

HTTPクライアントにはWebブラウザを利用します。

ファイルを受信するフォルダには作業フォルダを利用します。

注意
この設定例で使用するHTTPサーバは,あらかじめ用意されていることを前提としています。http://hostA/test.bmpにアクセスするとtest.bmpをダウンロードできるようにHTTPサーバを構成しているものとします。
また,HTTPアダプタがファイルのデータをダウンロードしたことを認識するために,HTTPアダプタに返すレスポンスヘッダにはContent-Dispositionヘッダを付与するように設定しておく必要があります。
(b) 設定の流れ

設定の流れを次に示します。

  1. 実行環境(テスト環境)のセットアップ
  2. 開発環境のセットアップ
  3. 各種定義ファイルの設定
  4. HTTPアダプタの定義
  5. ビジネスプロセスの追加
  6. HTTP受付の追加
  7. ビジネスプロセスの定義
  8. データ変換の定義
  9. ビジネスプロセスを実行するための準備
  10. ビジネスプロセスの実行

それぞれの手順について次に説明します。

(2) 実行環境(テスト環境)のセットアップ

HCSC簡易セットアップ機能を利用してJ2EEサーバおよびHCSCサーバを構築します。

  1. マニュアル「サービスプラットフォーム 開発ガイド 基本開発編」の「2.4.2 HCSC簡易セットアップ機能の実行」に従ってテスト環境を構築します。
    [メイン]タブの[HCSCサーバ]では,必ず「SOAP1.1/1.2併用モード」を選択してください。HTTPアダプタを利用するには,「SOAP1.1/1.2併用モード」を選択していることが前提となります。
    [メイン]タブの[DBあり/RMなしモデル],[DB/RMなしモデル]および[DB/RMありモデル]は,どれを選択しても実行できます。
  2. 3.3.13(1) J2EEサーバ用オプション定義ファイルの設定」に従って,J2EEサーバ用オプション定義ファイル(usrconf.cfg)を設定します。
  3. [スタート]メニューで[プログラム]−[Cosminexus]−[テストサーバ停止]を選択して,テスト環境のJ2EEサーバおよびHCSCサーバを停止します。
  4. [スタート]メニューで[プログラム]−[Cosminexus]−[テストサーバ起動]を選択して,テスト環境のJ2EEサーバおよびHCSCサーバを再起動します。

(3) 開発環境のセットアップ

開発環境を構築します。

  1. マニュアル「サービスプラットフォーム ファーストステップガイド」の「3.5.2 HCSCTEプロジェクトの作成」および「3.5.3 テスト環境のシステム構成定義を開発環境に取り込むための設定」に従って,HCSCTEプロジェクトを作成したあと,システム構成定義をテスト環境からエクスポートして開発環境にインポートします。

(4) 各種定義ファイルの設定

テスト環境でHTTP受付およびHTTPアダプタが動作するために,各種定義ファイルを設定します。

(a) HTTP受付の定義ファイル

HTTP受付で使用する定義ファイルの種類と,この設定例での使用有無を次に示します。

定義ファイルの種類 概要 この設定例での使用有無
HTTPレスポンスヘッダ定義ファイル HTTP受付の応答電文フォーマット(ヘッダ変数用)を省略した場合のデフォルト値として使用するHTTPレスポンスヘッダ情報を設定します。 使用しません。
HTTP受付定義ファイル HTTP受付の動作情報を設定します。 使用します。

この設定例では,作業フォルダを利用してファイルを受信するため,次に示すHTTP受付定義ファイルのファイル設定用プロパティを設定します。

プロパティ名 設定値 説明
httprecp.switchover.file-transfer.mode true 作業フォルダを生成するため,ここでは「true」を設定します。
httprecp.response.ignore-bodymsg true HTTP受付のレスポンス内容に,応答電文(ボディ)ではなく作業フォルダ内のファイルを使用するため,ここでは「true」を設定します。

表に記載していないプロパティは設定不要です。

各プロパティの詳細は,マニュアル「サービスプラットフォーム リファレンス」の「HTTP受付定義ファイル」を参照してください。

HTTP受付定義ファイルは「(6) ビジネスプロセスの追加」で編集します。

(b) HTTPアダプタの定義ファイル

HTTPアダプタで使用する定義ファイルの種類と,この設定例での使用有無を次に示します。

定義ファイルの種類 概要 この設定例での使用有無
HTTPアダプタ定義ファイル HTTPアダプタの環境非依存の動作情報を設定します。 使用しません(すべてデフォルト値を使用します)。
HTTPアダプタ実行環境プロパティファイル HTTPアダプタの環境依存の動作情報を設定します。 使用します。
HTTPアダプタ実行環境共通プロパティファイル HTTPアダプタの環境依存の動作情報を設定します。複数のアダプタの定義を一括で変更する場合に使用します。 使用しません。

HTTPアダプタでは,これらの定義ファイル以外にシステムプロパティの設定が必要な場合がありますが,この設定例では使用しません。

HTTPアダプタ実行環境プロパティファイルで設定するプロパティを次の表に示します。

プロパティ名 設定値 概要
adphttp.request.method GET ファイルダウンロード要求のリクエストをGETメソッドで行うため,「GET」を設定します。
adphttp.request.uri-scheme-authority 環境に応じて設定します。 URIのスキームとオーソリティを指定します。事前に準備している接続先を指定します。この設定例では「http://hostA」とします。
adphttp.request.uri-path 環境に応じて設定します。 URIのパスを指定します。この設定例ではtest.bmpファイルをダウンロードするパスとして「/test.bmp」を設定します。
adphttp.request.output-folder-name −(設定しません) この設定例ではダウンロードしたファイルを作業フォルダに出力するため,設定しません。

表に記載していないプロパティは設定不要です。

各プロパティの詳細は,マニュアル「サービスプラットフォーム リファレンス」の「HTTPアダプタ実行環境プロパティファイル」を参照してください。

設定手順を次に示します。

  1. テンプレートファイル(<サービスプラットフォームのインストールディレクトリ>\CSC\custom-adapter\HTTP\config\templates\serviceid.properties)をコピーして,次のフォルダに格納します。
    <サービスプラットフォームのインストールディレクトリ>\CSC\custom-adapter\HTTP\config
  2. コピーしたテンプレートファイルをテキストエディタなどで開いて次のように編集します。
     
    adphttp.request.method=GET
    adphttp.request.uri-scheme-authority=http://hostA
    adphttp.request.uri-path=/test.bmp
    #adphttp.request.uri-query.<INDEX>=<QUERY-NAME>=<QUERY-VALUE>
    #adphttp.request.header.authorization.type=none
    #adphttp.request.header.authorization=
    #adphttp.request.header.content-type.charset=
    #adphttp.request.header.content-type=
    #adphttp.request.header.userdef.<INDEX>=<FIELD-NAME>:<FIELD-VALUE>
    #adphttp.request.part.message.binding=none
    #adphttp.request.part.file.1.input-folder-name=
    #adphttp.request.part.file.1.local-file-name=
    #adphttp.request.output-folder-name=
    #adphttp.config.trace.path=
    #adphttp.config.messagelog.level=10
    #adphttp.config.methodtrace.level=3
    #adphttp.config.methodtrace.filenum=8
    #adphttp.config.methodtrace.filesize=2097152
    #adphttp.config.exptrace.filenum=8
    #adphttp.config.exptrace.filesize=2097152
     
  3. コピーしたファイルの名称を「adphttp.properties」に変更します。
    「adphttp」はHTTPアダプタのサービスIDです。このサービスIDは,開発環境でHTTPアダプタを定義するときに使用します。
(c) HCSCサーバランタイム定義ファイルの設定

この設定例では,デフォルトの作業フォルダルートを使用するため,HCSCサーバランタイム定義ファイルの設定は不要です。

作業フォルダの詳細は,マニュアル「サービスプラットフォーム 解説」の「2.13.6 HTTP受付のファイル管理」を参照してください。

(5) HTTPアダプタの定義

開発環境でHTTPアダプタを定義します。操作手順を次に示します。

  1. Eclipseのメニューから,[ウィンドウ]−[ビューの表示]−[その他]を選択します。
    [ビューの表示]ダイアログが表示されます。
  2. [HCSC-Definer]−[HCSCTEビュー]を選択し,[開く]ボタンをクリックします。
    ツリービューにサービス定義一覧が表示されます。
  3. ツリービューのサービス定義一覧で右クリックして「サービスアダプタ追加」を選択します。
    追加するサービスアダプタから利用するサービス種別を設定するダイアログが表示されます。

    [図データ]

  4. サービス部品の種別のドロップダウンリストから「HTTPアダプタ」を選択して[次へ]ボタンをクリックします。
    HTTPアダプタの追加に必要な情報を入力するダイアログが表示されます。
  5. サービス名を入力します。
    ここでは「adphttp」とします。

    [図データ]

  6. [終了]ボタンをクリックします。
    サービスアダプタ定義画面(サービスアダプタ定義(基本)タブ)が表示されます。
  7. オペレーションの[追加]ボタンをクリックして,オペレーション名とフォルト名を入力します。
    ここでは,オペレーション名は「FileDownload」,フォルト名は「fault」とします。

    [図データ]

  8. [オペレーション追加]ダイアログで[OK]ボタンをクリックします。
  9. [要求電文]−[サービス部品]−[電文フォーマット]の[参照]ボタンをクリックして,次の電文フォーマット定義ファイルを指定します。
    <サービスプラットフォームのインストールディレクトリ>\CSC\custom-adapter\HTTP\schema\adphttp_body_empty.fdx
    この設定例ではHTTPアダプタでファイルの受信だけを行うため,要求および応答のボディ電文はサービスプラットフォームが提供する空の電文フォーマット定義ファイルを利用します。
  10. [要求電文]−[サービス部品]の[フォーマットID]に任意の値を入力します。
    ここでは「format_req」とします。
  11. [応答電文]−[サービス部品]−[電文フォーマット]の[参照]ボタンをクリックして,次の電文フォーマット定義ファイルを指定します。
    <サービスプラットフォームのインストールディレクトリ>\CSC\custom-adapter\HTTP\schema\adphttp_body_empty.fdx
  12. [応答電文]−[サービス部品]の[フォーマットID]に任意の値を入力します。
    ここでは「format_res」とします。
  13. [サービス部品定義情報]の[サービスID]を「adphttp」に変更します。
    設定後のサービスアダプタ定義(基本)タブの例を次に示します。

    [図データ]

    オペレーション情報の通信モデルは「同期」から変更しないでください。なお,この設定例ではサービスアダプタ定義(詳細)タブは設定しません。すべてデフォルトのまま使用します。
  14. [ファイル]−[保管]を選択します。
    HTTPアダプタの定義が保存されます。

(6) ビジネスプロセスの追加

開発環境でビジネスプロセスを追加します。操作手順を次に示します。

  1. ツリービューのサービス定義一覧で右クリックして「ビジネスプロセス追加」を選択します。
    ビジネスプロセス定義を追加するためのダイアログが表示されます。
  2. 次のように設定します。
    項目 設定内容
    ビジネスプロセス名 「bp1」を入力します。
    ステータスの永続化 「no」を選択します。
    BPELファイル 「インポートする」にチェックしません。

    [図データ]

  3. [終了]ボタンをクリックします。
    ビジネスプロセスが追加され,ビジネスプロセス定義画面が表示されます。

(7) HTTP受付の追加

リクエストを受け付けるためのHTTP受付を追加します。操作手順を次に示します。

  1. ツリービューのビジネスプロセス(bp1)を右クリックして「ユーザ定義受付追加」を選択します。
    受付種別選択ウィザードが表示されます。
  2. 受付種別のドロップダウンリストから「HTTP受付」を選択して[次へ]ボタンをクリックします。

    [図データ]

    HTTP受付の追加に必要な情報を入力するダイアログが表示されます。
  3. [受付名]を指定します。
    ここでは「recphttp」とします。

    [図データ]

  4. [終了]ボタンをクリックします。
    ユーザ定義受付定義画面(ユーザ定義受付(基本)タブ)が表示されます。
  5. オペレーションの[追加]ボタンをクリックして,オペレーション名を入力します。
    ここでは,オペレーション名は「get」とします。

    [図データ]

  6. [オペレーション追加]ダイアログで[OK]ボタンをクリックします。
  7. [要求電文]−[受付]−[電文フォーマット]の[参照]ボタンをクリックして,次の電文フォーマット定義ファイルを指定します。
    <サービスプラットフォームのインストールディレクトリ>\CSC\custom-reception\http\schema\urecp_http_body_request.xsd
  8. [応答電文]−[受付]−[電文フォーマット]の[参照]ボタンをクリックして,次の電文フォーマット定義ファイルを指定します。
    <サービスプラットフォームのインストールディレクトリ>\CSC\custom-reception\http\schema\urecp_http_dummy_body_response.xsd
    オペレーション情報の通信モデルは「同期」から変更しないでください。
    設定後のユーザ定義受付(基本)タブの例を次に示します。

    [図データ]

  9. [ユーザ定義受付(詳細)]タブをクリックします。
    [ユーザ定義受付(詳細)]タブが表示されます。

    [図データ]

  10. [独自定義ファイル]で「cscurecphttp.properties」を選択し,[編集]ボタンをクリックします。
    独自定義ファイルを編集するためのエディタが起動します。
  11. HTTP受付定義ファイルの内容を次のように修正します。
     
    #urecp-http.context-root=
    #urecp-http.max-threads=10
    #urecp-http.exclusive-threads=0
    #urecp-http.queue-size=8192
    #urecp-http.pooled-instance.minimum=0
    #urecp-http.pooled-instance.maximum=0
    #urecp-http.ejb-transaction-timeout=0
    #httprecp.switchover.pass-through.mode=false
    httprecp.switchover.file-transfer.mode=true
    #httprecp.http.charset=UTF-8
    httprecp.response.ignore-bodymsg=true
    #httprecp.response.header.filename=
    #httprecp.system-exception.status-code=500
    #httprecp.response.generate.content-length=true
    #httprecp.file-trans.temp-file.partsize-threshold=0
    #httprecp.file-trans.maxsize.part=2147483647
    #httprecp.file-trans.maxsize.request=2147483647
    #httprecp.work-dir.auto-delete=true
    #httprecp.response.download.disposition-type=attachment
     
  12. [ファイル]−[すべて保管]を選択します。
    HTTP受付の定義およびHTTP受付定義ファイルが保存されます。

(8) ビジネスプロセスの定義

ビジネスプロセスの処理フローを定義します。

(a) 変数の定義

ビジネスプロセスで利用する変数を1つずつ定義します。この設定例で定義する変数の一覧を次に示します。

表G-1 定義する変数一覧

# 変数名 種別 用途の説明
1 recphttp_head_request XML HTTP受付の要求電文(ヘッダ)用の変数
2 recphttp_head_response XML HTTP受付の応答電文(ヘッダ)用の変数
3 adphttp_head_request XML HTTPアダプタの要求電文(ヘッダ)用の変数
4 adphttp_head_response XML HTTPアダプタの応答電文(ヘッダ)用の変数
5 recphttp_body_request XML HTTP受付の要求電文(ボディ)用の変数
6 recphttp_body_response XML HTTP受付の応答電文(ボディ)用の変数
7 adphttp_body_request non-XML HTTPアダプタの要求電文(ボディ)用の変数
8 adphttp_body_response non-XML HTTPアダプタの応答電文(ボディ)用の変数

変数の定義手順を次に示します。

  1. ビジネスプロセス定義画面のキャンバス上の[変数・相関セット]アイコンをダブルクリックします。
    [変数・相関セット一覧]ダイアログが表示されます。

    [図データ]

  2. 変数に応じて次の操作をします。
    • #1〜#4の場合
      表G-1の#1〜#4の変数名および種別を指定して[参照]ボタンをクリックします。
      電文フォーマットに使用するファイルを指定するダイアログが表示されるため,次の表に示す参照フォーマット定義を指定します。
      # 変数名 参照フォーマット定義
      1 recphttp_head_request <サービスプラットフォームのインストールディレクトリ>\CSC\custom-reception\http\schema\urecp_http_header_request.xsd
      2 recphttp_head_response <サービスプラットフォームのインストールディレクトリ>\CSC\custom-reception\http\schema\urecp_http_header_response.xsd
      3 adphttp_head_request <サービスプラットフォームのインストールディレクトリ>\CSC\custom-adapter\HTTP\schema\adphttp_header_request1.xsd
      4 adphttp_head_response <サービスプラットフォームのインストールディレクトリ>\CSC\custom-adapter\HTTP\schema\adphttp_header_response1.xsd
    • #5〜#8の場合
      [変数・相関セット一覧]ダイアログで,表G-1の#5〜#8の変数名および種別を指定して[取込]ボタンをクリックします。
      [電文フォーマットの取込]ダイアログが表示されるため,次のように指定して[OK]ボタンをクリックします。
      # 変数名 サービス/受付 オペレーション名 電文種別 電文フォーマット
      5 recphttp_body_request 受付名 recphttp get 要求電文(ボディ) recphttp_body_request.xsd
      6 recphttp_body_response 受付名 recphttp get 応答電文(ボディ) recphttp_body_response.xsd
      7 adphttp_body_request サービス名 adphttp FileDownload 要求電文(ボディ) adphttp_body_request.fdx
      8 adphttp_body_response サービス名 adphttp FileDownload 応答電文(ボディ) adphttp_body_response.fdx

      [図データ]

  3. [変数・相関セット一覧]ダイアログで[追加]ボタンをクリックします。
    変数一覧に,追加した変数が表示されます。#1〜#8の変数を同様に定義します。

    [図データ]

  4. [OK]ボタンをクリックします。
    [変数・相関セット一覧]ダイアログが閉じます。
(b) アクティビティの配置

ビジネスプロセス定義画面で次の表に示す順番にアクティビティを配置して,コネクションで接続します。

順番 アクティビティ種別 初期アクティビティ名 説明
1 開始 開始 ビジネスプロセスの開始を表します。デフォルトで配置されています。
2 受付 受付1 HTTPクライアントからの要求電文を受け付けるためのインターフェースを定義します。
3 データ変換 データ変換1 データ変換処理を定義します。
4 データ変換 データ変換2 データ変換処理を定義します。
5 サービス呼出 サービス呼出1 定義済みのHCSCコンポーネントへの要求電文の送信を定義します。この設定例ではHTTPアダプタが対象となります。
6 データ変換 データ変換3 データ変換処理を定義します。
7 データ変換 データ変換4 データ変換処理を定義します。
8 応答 応答1 HTTPクライアントから受信した要求電文に対する応答を返すためのインターフェースを定義します。
9 終了 終了 ビジネスプロセスの終了を表します。デフォルトで配置されています。

アクティビティを配置する手順については,マニュアル「サービスプラットフォーム 開発ガイド 基本開発編」の「5.4.1 アクティビティを配置する」を参照してください。

配置後のビジネスプロセス定義画面の状態を次に示します。

[図データ]

注 図のとおりに整列させる必要はありません。

(c) サービス呼出アクティビティの定義

HTTPアダプタを呼び出すためのサービス呼出アクティビティを定義します。

  1. サービス呼出アクティビティ(サービス呼出1)をダブルクリックします。
    [サービス呼出アクティビティ]ダイアログが表示されます。
  2. 次のように設定します。
    項目 設定内容
    アクティビティ名 HTTPアダプタ呼出
    サービス名 adphttp
    オペレーション名 FileDownload
    通信モデル 同期(編集できません)
    要求電文 ボディ割当変数 adphttp_body_request
    応答電文 ボディ割当変数 adphttp_body_response

    [図データ]

  3. [要求電文]−[ヘッダ割当変数]の[設定]ボタンをクリックします。
    [要求電文用ヘッダ割当変数]ダイアログが表示されます。
  4. [追加]ボタンをクリックします。
  5. [要求電文用ヘッダ割当変数]ダイアログで次のように設定します。
    項目 設定内容
    割当変数 adphttp_head_request
    ルート要素 http-header-request
    名前空間 http://www.hitachi.co.jp/soft/xml/cosminexus/csc/adapter/http/header_request

    [図データ]

  6. [要求電文用ヘッダ割当変数]ダイアログで[OK]ボタンをクリックします。
    [要求電文用ヘッダ割当変数]ダイアログが閉じます。
  7. [応答電文]−[ヘッダ割当変数]の[設定]ボタンをクリックします。
    [応答電文用ヘッダ割当変数]ダイアログが表示されます。
  8. [追加]ボタンをクリックします。
  9. [応答電文用ヘッダ割当変数]ダイアログで次のように値を設定します。
    項目 設定内容
    割当変数 adphttp_head_response
    ルート要素 http-header-response
    名前空間 http://www.hitachi.co.jp/soft/xml/cosminexus/csc/adapter/http/header_response

    [図データ]

  10. [応答電文用ヘッダ割当変数]ダイアログで[OK]ボタンをクリックします。
    [応答電文用ヘッダ割当変数]ダイアログが閉じます。
  11. [サービス呼出アクティビティ]ダイアログで[OK]ボタンをクリックします。
    設定内容が保存されて[サービス呼出アクティビティ]ダイアログが閉じます。
(d) 受付アクティビティの定義

受付アクティビティを定義します。

  1. 受付アクティビティ(受付1)をダブルクリックします。
    [受付アクティビティ]ダイアログが表示されます。
  2. 次のように設定します。
    項目 設定内容
    アクティビティ名 受付
    オペレーション名 get
    ボディ割当変数 recphttp_body_request
    通信モデル 同期
    インスタンス生成 yes

    [図データ]

  3. [ヘッダ割当変数]の[設定]ボタンをクリックします。
    [ヘッダ割当変数]ダイアログが表示されます。
  4. [追加]ボタンをクリックします。
  5. [ヘッダ割当変数]ダイアログで次のように設定します。
    項目 設定内容
    割当変数 recphttp_head_request
    ルート要素 http-header-request
    名前空間 http://www.hitachi.co.jp/soft/xml/cosminexus/csc/reception/http/request

    [図データ]

  6. [ヘッダ割当変数]ダイアログで[OK]ボタンをクリックします。
    [ヘッダ割当変数]ダイアログが閉じます。
  7. [受付アクティビティ]ダイアログで[OK]ボタンをクリックします。
    設定内容が保存されて[受付アクティビティ]ダイアログが閉じます。
(e) 応答アクティビティの定義

応答アクティビティを定義します。

  1. 応答アクティビティ(応答1)をダブルクリックします。
    [応答アクティビティ]ダイアログが表示されます。
  2. 次のように設定します。
    項目 設定内容
    アクティビティ名 応答
    オペレーション名 get
    ボディ割当変数 recphttp_body_response
    フォルト名 −(設定しません)

    [図データ]

  3. [ヘッダ割当変数]の[設定]ボタンをクリックします。
    [ヘッダ割当変数]ダイアログが表示されます。
  4. [追加]ボタンをクリックします。
  5. [ヘッダ割当変数]ダイアログで次のように設定します。
    項目 設定内容
    割当変数 recphttp_head_response
    ルート要素 http-header-response
    名前空間 http://www.hitachi.co.jp/soft/xml/cosminexus/csc/reception/http/response

    [図データ]

  6. [ヘッダ割当変数]ダイアログで[OK]ボタンをクリックします。
    [ヘッダ割当変数]ダイアログが閉じます。
  7. [応答アクティビティ]ダイアログで[OK]ボタンをクリックします。
    設定内容が保存されて[応答アクティビティ]ダイアログが閉じます。
(f) データ変換アクティビティの定義

各データ変換アクティビティを定義します。

  1. データ変換アクティビティ(データ変換1〜データ変換4)をダブルクリックします。
    [データ変換アクティビティ]ダイアログが表示されます。

    [図データ]

  2. それぞれのデータ変換アクティビティで次のように設定します。
    アクティビティ 項目 設定内容
    データ変換1 アクティビティ名 HTTPアダプタボディ要求電文生成
    変換元変数 一覧 recphttp_body_request
    変換先変数 変数 adphttp_body_request
    データ変換定義 HTTPアダプタボディ要求電文生成
    データ変換2 アクティビティ名 HTTPアダプタヘッダ要求電文生成
    変換元変数 一覧 recphttp_head_request
    変換先変数 変数 adphttp_head_request
    データ変換定義 HTTPアダプタヘッダ要求電文生成
    データ変換3 アクティビティ名 HTTP受付ボディ応答電文生成
    変換元変数 一覧 adphttp_body_response
    変換先変数 変数 recphttp_body_response
    データ変換定義 HTTP受付ボディ応答電文生成
    データ変換4 アクティビティ名 HTTP受付ヘッダ応答電文生成
    変換元変数 一覧 adphttp_head_response
    変換先変数 変数 recphttp_head_response
    データ変換定義 HTTP受付ヘッダ応答電文生成

    注※
    [変換元変数]の[変数]ドロップダウンリストから該当する変数を選択して追加ボタンを押すと一覧に追加されます。

  3. [データ変換アクティビティ]ダイアログで[OK]ボタンをクリックします。
    設定内容が保存されて[データ変換アクティビティ]ダイアログが閉じます。データ変換1〜データ変換4まで同様に定義します。

(9) データ変換の定義

(8)(f) データ変換アクティビティの定義」で定義したデータ変換アクティビティに対して,マッピング定義を生成します。

マッピング定義の操作方法についてはマニュアル「サービスプラットフォーム 開発ガイド 基本開発編」の「6.4 マッピングする」を参照してください。

各データ変換アクティビティのマッピング定義について示します。

(a) HTTPアダプタボディ要求電文生成
  1. ビジネスプロセス定義画面でデータ変換アクティビティ(HTTPアダプタボディ要求電文生成)をダブルクリックします。
    [ルート要素選択]ダイアログが表示されます。

    [図データ]

  2. [OK]ボタンをクリックします。
    マッピングビューアが表示されます。

    [図データ]

    このアクティビティではマッピングは不要です。この設定例では,ファイルを送信する処理を実行するため,HTTPアダプタの要求電文(ボディ)は空の状態にします。
(b) HTTPアダプタヘッダ要求電文生成

HTTPアダプタがダウンロードするファイルを作業フォルダに格納するようにマッピングします。リクエストのメソッドおよびURIはHTTPアダプタ実行環境プロパティファイルに定義しているため,要求電文の該当個所へのマッピングは不要です。

  1. ビジネスプロセス定義画面でデータ変換アクティビティ(HTTPアダプタヘッダ要求電文生成)をダブルクリックします。
    [ルート要素選択]ダイアログが表示されます。

    [図データ]

  2. [OK]ボタンをクリックします。
    マッピングビューアが表示されます。
  3. constファンクションを配置して,constファンクションをダブルクリックします。
    [定数]ダイアログが表示されます。
  4. ファンクション名を「false」に変更して,「論理値」および「偽」を選択します。

    [図データ]

  5. [OK]ボタンをクリックします。
    [定数]ダイアログが閉じます。
  6. 次の表を参考にマッピングします。
    マッピング元およびマッピング先はルート要素からのパスで記載しています。
    マッピング元 マッピング先
    /hrc:http-header-request/hrc:request-id /tns:http-header-request/tns:request-id
    constファンクション(false) /tns:http-header-request/tns:output-folder-name/@common

    [図データ]

(c) HTTP受付ボディ応答電文生成
  1. ビジネスプロセス定義画面でデータ変換アクティビティ(HTTP受付ボディ応答電文生成)をダブルクリックします。
    [ルート要素選択]ダイアログが表示されます。

    [図データ]

  2. [OK]ボタンをクリックします。
    マッピングビューアが表示されます。

    [図データ]

    このアクティビティではマッピングは不要です。この設定例では,HTTP受付はレスポンス時にファイルをダウンロードする処理を実行するため,HTTP受付の応答電文(ボディ)は空の状態にします。
(d) HTTP受付ヘッダ応答電文生成

HTTP受付がクライアントに返すファイル情報をマッピングします。

  1. ビジネスプロセス定義画面でデータ変換アクティビティ(HTTP受付ヘッダ応答電文生成)をダブルクリックします。
    [ルート要素選択]ダイアログが表示されます。

    [図データ]

  2. [OK]ボタンをクリックします。
    マッピングビューアが表示されます。
  3. constファンクションを配置して,constファンクションをダブルクリックします。
    [定数]ダイアログが表示されます。
  4. ファンクション名を「file-name」に変更します。
  5. 「文字列」を選択し,値にダウンロードするファイル名となる任意の文字列を指定します。
    この設定例では「test.bmp」を指定します。

    [図データ]

  6. [OK]ボタンをクリックします。
    [定数]ダイアログが閉じます。
  7. 次の表を参考にマッピングします。
    マッピング元およびマッピング先はルート要素からのパスで記載しています。
    マッピング元 マッピング先
    constファンクション(file-name) /hrc:http-header-response/hrc:files/hrc:file/hrc:file-name
    /tns:http-header-response/tns:http-part/tns:files/tns:file/tns:local-file-name /hrc:http-header-response/hrc:files/hrc:file/hrc:local-file-name
    /tns:http-header-response/tns:http-header-Content-Type /hrc:http-header-response/hrc:files/hrc:file/hrc:content-type
    /tns:http-header-response/tns:http-header-Content-Type/@charset /hrc:http-header-response/hrc:files/hrc:file/hrc:content-type/@charset

    [図データ]

(10) ビジネスプロセスを実行するための準備

定義したHCSCコンポーネントを保存して配備定義します。操作手順を次に示します。

  1. [ファイル]−[すべて保管]を選択します。
    HTTPアダプタ,HTTP受付,およびビジネスプロセスの定義が保存されます。
  2. ツリービューの[サービス定義一覧]を右クリックして,[全サービスをサーバに配備して開始]を選択します。
    ログインしていない場合は,アカウント認証画面が表示されます。手順3.を実施してください。
  3. [ユーザID]に「admin」を,[パスワード]に「admin」を入力し,[OK]ボタンをクリックします。
    処理中であることを知らせるメッセージが表示されたあと,結果を知らせるメッセージが表示されます。

次のダイアログが表示されていれば処理が正常に完了しています。

[図データ]

失敗した場合は,エラー内容を基にここまで定義した内容に誤りがないか確認してください。

(11) ビジネスプロセスの実行

  1. Webブラウザを起動して次のURLにアクセスします。
    http://hostB/rcp1/get
    URL中の「hostB」は,hostBのIPv4形式のIPアドレスに名前解決されるものとします。ホスト名以下のパスは「/受付ID/受付のオペレーション名」です。

ビジネスプロセスが正しく実行されている場合は,次のポップアップが出力されてHTTP受付からファイルをダウンロードできます。

[図データ]

ダウンロードするファイル名は,マッピング定義のconstファンクションで指定した名称となります。