ステップ 9. バッチ・モードでユーザー・エージェントを起動する.(オプション)
INT003 - LANSAユーザー・エージェントの使用
この演習の前のステップでは、Integrator スタジオからユーザー・エージェントを実行しました。このステップでは、バッチ・モードでユーザー・エージェントを実行してXLSファイルを送信します。注: このステップでは、ユーザー・エージェントをスタンドアロン・アプリケーションとしてインストールしておく必要があります。
1. ユーザー・エージェント・プロジェクト用に作成されたファイルは、すでに以下のようなディレクトリに存在します。
C:\Program Files\LANSA\Integrator\Studio\workspace\JMI Training\solutions\SendCSVFile
上記のディレクトリから次のファイルを
SendCSVFile.lih
iii_employee_new_salary.xls
以下のような場所にある \User Agent\workspaceフォルダにコピーします。
C:\Program Files\LANSA\Integrator\UserAgent\workspace
2. このステップでは、メモ帳を使用して、 iii_UPLOAD.BAT ファイルを LANSA ユーザー・エージェントをインストールしたディレクトリ (デフォルトではC:\Program Files\LANSA\Integrator\UserAgent) 内に作成します。ファイル iii_UPLOAD.BAT は、DOS バッチファイルで、このバッチファイル実行時に必要なパラメータをユーザー・エージェントに渡すことで、ユーザー・エージェントをユーザー インターフェイス無しに実行できるようにします。
3. メモ帳を開いて以下のファイルを開きます。
C:\Program Files\LANSA\Integrator\UserAgent\workspace\upload.bat
注意:ファイルを開く際は、ファイルの種類で [すべてのファイル] を使用する必要があります。
これは、ユーザー・エージェントを実行するバッチ・ファイルのサンプルです。コードは以下のようになります。
@echo off000
cls
rem — Delete previous error log file
if exist useragent.err del useragent.err
rem — Send
java -Djsf.log=\LANSA\Integrator\useragent\useragent.log com.lansa.jsf.useragent.JSFUserAgent acme.lih order.xls xls-order-response.rsp
if exist useragent.err goto error
rem — Send
java -Djsf.log=\LANSA\Integrator\useragent\useragent.log com.lansa.jsf.useragent.JSFUserAgent acme.lih order.csv csv-order-response.rsp
if exist useragent.err goto error
goto end
rem – An error has occured
:error
cls
echo Check useragent.err for possible messages
echo Check useragent.log for possible messages
goto end
:end
「rem — Send』から『goto error』までの 2 番目のコード・ブロックを削除します。提供のサンプルでは、バッチ・ファイルによって 2 つのファイルが送信されることを前提にしています。削除するコードは上記のプログラム・コードで赤で示されています。コードは以下のようになります。
@echo off
cls
rem — Delete previous error log file
if exist useragent.err del useragent.err
rem — Send
java -Djsf.log=\LANSA\Integrator\useragent\useragent.log com.lansa.jsf.useragent.JSFUserAgent acme.lih order.xls xls-order-response.rsp
if exist useragent.err goto error
goto end
rem – An error has occured
:error
cls
echo Check useragent.err for possible messages
echo Check useragent.log for possible messages
goto end
:end
4. 提供のコードは自身の PC 上で操作できるように拡張する必要があります。入力するコードは使用の Windows のバージョンにより異なります。ここに示されているのは、64 ビット PC の Windows 8.1 の例です。コマンド行の最初の "java" をフルパスに置き換えてください。コードは以下のようになります。[赤で示された箇所が新しく追加するコードです。
rem — Send
C:\Program Files\Java\jre1.8.0_112\bin\JAVAW.EXE "-Djava.ext.dirs=..\lib\ext" "-Djava.endorsed.dirs=..\lib\endorsed" "-Djsf.log=.\useragent.log" com.lansa.jsf.useragent.JSFUserAgent acme.lih order.xls xls-order-response.rsp
5. 編集しているコマンド・ラインではJava runtime environment(JRE)でユーザー・エージェントを実行し、使用する構成ファイル(.lih)などの複数のパラメータを渡します。最初のパラメータは"-Djava.ext.dirs=で始まります。このパラメータに \lib…\ext folder のパスを挿入する必要があります。
C:\Program Files\Java のフォルダを確認すると、Java の更新時に残された複数のバージョンの Java のフォルダがあります。
Java の最新のバージョン (もしくは Integrator 設定で指定した実際の Java バージョン) のパスを指定してください。 例えば、C:\Program Files\Java\jre1.8.0_112\lib\ext のようになります。 このパスを以下に示すように最初のパラメータに追加します。変更された箇所は赤で示されています。
rem — Send
C:\Program Files\Java\jre1.8.0_112\bin\JAVAW.EXE "-Djava.ext.dirs= C:\Program Files\Java\jre1.8.0_112\lib\ext;.\lib\ext" "-Djava.endorsed.dirs=..\lib\endorsed" "-Djsf.log=.\useragent.log" com.lansa.jsf.useragent.JSFUserAgent acme.lih order.xls xls-order-response.rsp
6. このステップでは、構成ファイル(lih)、入力ファイル(xls)、応答ファイル(csv)の正しい実行時のパラメータを設定します。
acme.lihで始まるコマンド文字列の最後を次のように置き換えます。使用するファイル名にイニシャルをつけることを忘れないようにしてください。変更された箇所は赤で示されています。
rem — Send
C:\Program Files\Java\jre1.8.0_112\bin\JAVAW.EXE "-Djava.ext.dirs=C:\Program Files\Java\jre1.8.0_112\lib\ext;.\lib\ext" "-Djava.endorsed.dirs=..\lib\endorsed" "-Djsf.log=.\useragent.log" com.lansa.jsf.useragent.JSFUserAgent workspace\iiiSendCSVFile.lih workspace\iii_employee_new_salary.xls workspace\iii_employee_response.csv
重要:ここではコマンド行1行を編集していることを忘れないでください。上記の例は幅の制限があるため複数行に分けて表示されています。メモ帳を使用してこの行を1行として表示することができます。ただし右端での折り返しが有効になっている場合は、複数行として表示されます。
7. 最終的な iii_upload.bat ファイルは以下のようになります。
@echo off
cls
rem — Delete previous error log file
if exist useragent.err del useragent.err
rem — Send
C:\Program Files\Java\jre1.8.0_112\bin\JAVAW.EXE "-Djava.ext.dirs=C:\Program Files\Java\jre1.8.0_112\lib\ext;.\lib\ext" "-Djava.endorsed.dirs=..\lib\endorsed" "-Djsf.log=.\useragent.log" com.lansa.jsf.useragent.JSFUserAgent workspace\iiiSendCSVFile.lih workspace\iii_employee_new_salary.xls workspace\iii_employee_response.csv
if exist useragent.err goto error
goto end
rem – An error has occured
:error
cls
echo Check useragent.err for possible messages
echo Check useragent.log for possible messages
goto end
:end
送信指示が以下の4つの部分で構成されていることに注意してください。
- ユーザー・エージェントを開始する命令
- 最初のパラメータ - SendCSVFile.lih (サービスを検索する方法)
- 2 番目のパラメータ - iii_Employee_New_Salary.xls (処理するデータ)
- 3 番目のパラメータ - iii_employee_response.csv (サービスからの応答を受信するファイルの名前)
8. [ファイル] メニューで [名前を付けて保存] オプションを選択し、以下のオプションを指定します。
保存場所 |
LANSAユーザー・エージェントをインストールしたディレクトリ (デフォルトでは.....\program files\lansa\integrator\UserAgent) を探します。 |
ファイル名 |
iii_UPLOAD.BAT |
ファイルの種類 |
すべてのファイル |
注意:…\UserAgent\ not …\UserAgent\workspace\. に保存します。
9. iii_UPLOAD.BAT ファイルを実行します。正常に終了すると、ファイル iii_response.csv がディレクトリ …\UserAgent\workspace\ 内に作成されているはずです。Windows はこのファイル (CSV) を Excel で開きます。
問題が発生した場合、LANSA ユーザー・エージェントを手動で開始できるか、ホストの SendCSVFile.lih をロードできるか、ソース iii_Employee_New_Salary.xls を開けるか、応答を送受信できるかを最初に確認してください。詳細については、「ステップ 5. ファンクションiiiFN03 をテストする」を参照してください。