WebOTX ESB から HULFT-DataMagic(※) を呼び出してCSV形式とXML形式のデータ形式を相互に変換するサンプルです。
※:HULFT-DataMagic はセゾン情報システムズ社の製品です。
※:HULFT-DataMagic の バージョン 01.04.00 (Windows版) および 02.00.00 (Windows版)で動作確認しています。
入力ディレクトリからファイルを取得し、HULFT-DataMagicでメッセージ変換を行います。
変換した内容を出力ディレクトリに保存します。

図4.20.1-1
このサンプルでは以下の組み合わせの変換を収録しています。
それぞれの組み合わせで必要となるファイルを説明します。(いくつかのファイルは重複しています。)
| ファイル名 | 説明 |
|---|---|
| 20_FileInbound_DataMagic.zip | CSV→XML変換のパターンのサービスアセンブリです。ESBに配備して使用します。 |
| proj_20_FileInbound_DataMagic.zip | CSV→XML変換のパターンのサービスアセンブリのプロジェクトファイルです。サービスアセンブリのパラメータを参照・編集する場合に、 Developers' Studioにインポートして使用します。 |
| proj_20_DataMagicProcessor.zip | UserProcessorSEプロセッサのプロジェクトファイルです。DataMagicを呼び出すDataMagicProcessorのサンプルプログラムを参照・編集する場合に、 Developers' Studioにインポートして使用します。 |
| csv2xml.param | CSV→XML変換のパターンでHULFT-DataMagicが使用するパラメータファイルです。 |
| csv001 | HULFT-DataMagic V1.4 が使用するデータ形式情報ファイル(CSV情報)です。 |
| xml001 | HULFT-DataMagic V1.4 が使用するデータ形式情報ファイル(XML情報)です。 |
| TestData.csv | CSV→XML変換のパターンの入力データです。 |
| ファイル名 | 説明 |
|---|---|
| 20_FileInbound_DataMagic_XMLInput.zip | XML→CSV変換のパターンのサービスアセンブリです。ESBに配備して使用します。 |
| proj_20_FileInbound_DataMagic_XMLInput.zip | XML→CSV変換のパターンのサービスアセンブリのプロジェクトファイルです。サービスアセンブリのパラメータを参照・編集する場合に、 Developers' Studioにインポートして使用します。 |
| proj_20_DataMagicProcessor.zip | UserProcessorSEプロセッサのプロジェクトファイルです。DataMagicを呼び出すDataMagicProcessorのサンプルプログラムを参照・編集する場合に、 Developers' Studioにインポートして使用します。 |
| xml2csv.param | XML→CSV変換のパターンでHULFT-DataMagicが使用するパラメータファイルです。 |
| xml2csv.env | XML→CSV変換のパターンでHULFT-DataMagicが使用する環境ファイルです。(入力XMLファイルの繰り返し要素について設定されます。) |
| csv001 | HULFT-DataMagic V1.4 が使用するデータ形式情報ファイル(CSV情報)です。 |
| xml001 | HULFT-DataMagic V1.4 が使用するデータ形式情報ファイル(XML情報)です。 |
| TestData.xml | XML→CSV変換のパターンの入力データです。 |
| ファイル名 | 説明 |
|---|---|
| 20_FileInbound_DataMagicV2.zip | CSV→XML変換のパターンのサービスアセンブリです。ESBに配備して使用します。 |
| proj_20_FileInbound_DataMagicV2.zip | CSV→XML変換のパターンのサービスアセンブリのプロジェクトファイルです。サービスアセンブリのパラメータを参照・編集する場合に、 Developers' Studioにインポートして使用します。 |
| proj_20_DataMagicProcessor.zip | UserProcessorSEプロセッサのプロジェクトファイルです。DataMagicを呼び出すDataMagicProcessorのサンプルプログラムを参照・編集する場合に、 Developers' Studioにインポートして使用します。 |
| dm_v2_param | HULFT-DataMagic V2.0 が使用する管理情報です。 |
| TestData.csv | CSV→XML変換のパターンの入力データです。 |
| ファイル名 | 説明 |
|---|---|
| 20_FileInbound_DataMagicV2_XMLInput.zip | XML→CSV変換のパターンのサービスアセンブリです。ESBに配備して使用します。 |
| proj_20_FileInbound_DataMagicV2_XMLInput.zip | XML→CSV変換のパターンのサービスアセンブリのプロジェクトファイルです。サービスアセンブリのパラメータを参照・編集する場合に、 Developers' Studioにインポートして使用します。 |
| proj_20_DataMagicProcessor.zip | UserProcessorSEプロセッサのプロジェクトファイルです。DataMagicを呼び出すDataMagicProcessorのサンプルプログラムを参照・編集する場合に、 Developers' Studioにインポートして使用します。 |
| dm_v2_param | HULFT-DataMagic V2.0 が使用する管理情報です。 |
| TestData.xml | XML→CSV変換のパターンの入力データです。 |
実行環境の構築を行い、サンプルを実行します。
実行後には環境のクリアを行います。
以降では、環境構築以降はCSV→XML変換のパターンで説明します。 XML→CSV変換のパターンも手順は同じなので、「4.20.2.構成」のファイルの説明を参考に、 XML→CSV変換のパターンのファイルに適宜読み替えて実行してください。
HULFT-DataMagicに関する設定と、サービスアセンブリの配備を行います。
HULFT-DataMagicのバージョンにより手順が異なります。
[HULFT-DataMagic V1.4の場合]
サンプルの DataMagicProcessor および FileInputDataMagicProcessor には下記のパラメータを指定可能です。
| パラメータ名 | 説明 |
|---|---|
| utledPath | utled.exeへのファイルパスを指定します。[必須] 例: C:\HULFT Family\huledpro\utled.exe |
| paramFilePath | HULFT-DataMagicで定義した変換パターンのファイルを指定します。[必須] 例: C:\csv2xml.param |
| inputType | DataMagicへの入力メッセージをNormalizedMessageのCONTENT領域かAttachment領域かどちらから取得するかを選択します。[任意] "CONTENT" か "ATTACHMENT" を指定します。指定しない場合(デフォルト)は "CONTENT" です。 |
| outputType | DataMagicからの出力メッセージをNormalizedMessageのCONTENT領域かAttachment領域かどちらに格納するかを選択します。[任意] "CONTENT" か "ATTACHMENT" を指定します。指定しない場合(デフォルト)は "CONTENT" です。 |
[HULFT-DataMagic V2.0の場合]
C:\HULFT Family\huledpro>utlediupdt -f dm_v2_param
サンプルの DataMagicV2Processor および FileInputDataMagicV2Processor には下記のパラメータを指定可能です。
| パラメータ名 | パラメータ値の説明 |
|---|---|
| utledPath | utled.exeへのファイルパスを指定します。[必須] 例: C:\HULFT Family\huledpro\utled.exe |
| dataTransID | HULFT-DataMagicで定義した変換パターンのIDを指定します。[必須] 例: CSVtoXML |
| inputType | DataMagicへの入力メッセージをNormalizedMessageのCONTENT領域かAttachment領域かどちらから取得するかを選択します。[任意] "CONTENT" か "ATTACHMENT" を指定します。指定しない場合(デフォルト)は "CONTENT" です。 |
| outputType | DataMagicからの出力メッセージをNormalizedMessageのCONTENT領域かAttachment領域かどちらに格納するかを選択します。[任意] "CONTENT" か "ATTACHMENT" を指定します。指定しない場合(デフォルト)は "CONTENT" です。 |
下記の図はプロジェクトファイルをDeveloper's Studioにインポートした場合の画面です。
赤枠の「プロセッサーのパラメーター」の項目が変更可能です。

図4.20.3-1
otxadminでドメインとコンポーネントの起動状況を確認します。
otxadmin> list-jbi-binding-components ================================ List of Binding Components ================================ Name : CORBABinding State: Started -------------------------------- Name : FTPBinding State: Started -------------------------------- Name : FileBinding State: Started -------------------------------- (中略) -------------------------------- Name : SOAPBinding State: Started --------------------------------FileBindingがstartedになっていることを確認します。
otxadmin> start-jbi-component FileBinding
otxadmin> list-jbi-service-engines ================================ List of Service Engines ================================ Name : CBREngine State: Started -------------------------------- Name : SequencingEngine State: Started -------------------------------- Name : UserProcessorEngine State: Started -------------------------------- Name : XSLTEngine State: Started --------------------------------UserProcessorEngineがstartedになっていることを確認します。
otxadmin> start-jbi-component UserProcessorEngine
20_FileInbound_DataMagic.zip を配備します。
配備には環境に応じて以下の3種類の方法があります。
otxadmin> deploy-jbi-service-assembly <20_FileInbound_DataMagic.zipへのパス>WebOTX AS Foundation/Standard/Enterpriseのアドバンスドモードの場合は以下を実行します。
otxadmin> deploy-jbi-service-assembly --apgroup <アプリケーショングループ名> --pgroup <プロセスグループ名> <20_FileInbound_DataMagic.zipへのパス>
統合運用管理ツールもしくは otxadmin から、配備したサービスアセンブリを起動します。
(1) 統合運用管理ツールによる起動
(2) otxadminによる起動
otxadmin> start-jbi-service-assembly 20_FileInbound_DataMagic
入力ディレクトリに入力ファイル(CSV)を投入し、応答の出力ファイル(XML)を確認します。
<?xml version="1.0" encoding="Shift_JIS" standalone="yes" ?><root><records><ID>ID</ID><NAME>NAME</NAME><CITY>CITY</CITY></records><records><ID>1</ID><NAME>NIPPON Taro</NAME><CITY>Minato City</CITY></records><records><ID>2</ID><NAME>NIPPON Hanako</NAME><CITY>Kawasaki City</CITY></records><records><ID>3</ID><NAME>SUZUKI Moeko</NAME><CITY>Yokohama City</CITY></records></root>
メッセージログを確認し、送信されたメッセージを確認します。
メッセージログ機能については2.16. メッセージログ機能の利用を参照してください。
配備したサービスアセンブリを配備解除し、入出力に使用したディレクトリの削除を行います。
配備解除には環境に応じて以下の3種類の方法があります。
(1) Developers' Studioによる配備解除
(2) 統合運用管理ツールによる配備解除
(3) otxadminによる配備解除
otxadmin> shut-down-jbi-service-assembly 20_FileInbound_DataMagic
otxadmin> undeploy-jbi-service-assembly 20_FileInbound_DataMagic
特になし。