Javaエージェントは特殊なJavaプログラムで、バックグラウンドで情報を収集したり定義されたタスクを実行します。この処理は一定のスケジュールに基づいて実行され、ユーザの直接的な対応は必要とされません。作成されたJavaエージェントは、自動的に起動され、ユーザの代わりに非同期に処理を行います。Javaエージェントでは、レガシーシステムやWeb Servicesなどの外部システムにアクセスできます。Javaエージェントを使用すると、これらの外部サービスをInterstage BPMプロセスインスタンスに組み込むことができます。
Interstage BPM Studio for Systemwalkerでは、ワークフローアプリケーションプロジェクトに複数のJavaエージェントを追加できます。新しいJavaエージェントを設定する場合は、Interstage BPM Studio for Systemwalkerに付属するagentsConfig.xmlというXMLファイルを使用します。新しく設定したJavaエージェントは、Activityノードに割り当てることにより、Interstage BPMプロセスインスタンス内のアクティビティとして実行されます。Javaエージェントは、ロールをActivityノードに割り当てるのと同じ方法で、Activityノードに割り当てることができます。それにより、JavaエージェントがInterstage BPMアクティビティのロールを担うようになります。
新しいJavaエージェントを定義するには、以下の手順に従います。
[ナビゲーター]ビューのプロジェクトを右クリックし、ポップアップメニューから[新規] > [エージェント]を選択します。
新しいagentsConfig.xmlファイルが、ワークフローアプリケーションプロジェクトのResourceフォルダに自動的に格納されます。デフォルトのagentsConfig.xmlファイルがリソースエディタで自動的に開かれます。このファイルは、以下のようになります。
<?xml version="1.0" encoding="utf-8" ?> <!-- Action agents configuration file --> <!-- Begin sample agent configuration For Windows: <ActionAgentList> <ActionAgent> <Name>@CRChk</Name> <Description>Invoke the CR check inform</Description> <RetryInterval<1>/RetryInterval> <EscalationInterval>1</EscalationInterval> <ClassName>com.fujitsu.iflow.tests.AgentSimulator</ClassName> <ClassPath>C:\Fujitsu\InterstageBPM\classes</ClassPath> <ConfigFile>C:\Fujitsu\InterstageBPM\server\instance\default\attachments\AUTOEXEC.BAT</ConfigFile> </ActionAgent> </ActionAgentList> For Solaris: <ActionAgentList> <ActionAgent> <Name>@CRChk</Name> <Description>Invoke the CR check inform</Description> <RetryInterval<1>/RetryInterval> <EscalationInterval>1</EscalationInterval> <ClassName>com.fujitsu.iflow.tests.AgentSimulator</ClassName> <ClassPath>/opt/FJSVibpm/classes</ClassPath> <ConfigFile>/opt/FJSVibpm/server/instance/default/attachments/AUTOEXEC.BAT</ConfigFile> </ActionAgent> </ActionAgentList>
agentsConfig.xmlファイルが存在する場所に移動し、新しいJavaエージェントに必要なプロパティを入力します。以下のプロパティを設定します。
Name(名前):エージェントの名前です。エージェント名の先頭には、必ず@を付けます。これによってJavaエージェントであることが示されます。
Description(説明):エージェントの形式と機能を説明します。
RetryInterval(再試行間隔):エラーが発生した場合の再試行間隔を秒単位で指定します。
EscalationInterval(エスカレート間隔):エラーがこの回数を超えると、システム管理者にメールで通知されます。
ClassName(クラス名):エージェントに関連付けられたJavaクラスの名前です。
ClassPath(クラスパス):エージェントに関連付けられたJavaクラスのクラスパスです。このエントリを指定しないと、Interstage BPM Studio for Systemwalkerは、クラスパスとしてC:\Fujitsu\InterstageBPM\classesを使用します。
ConfigFile(設定ファイル):Javaエージェントが使用する設定ファイルの完全修飾名です。
サンプル設定ファイルBankLoanAgentsConfig.xmlが、<Interstage BPM Studio for Systemwalkerインストールディレクトリ>\samples\BankLoanディレクトリに置かれています。このファイルには、Javaエージェントの設定パラメタと、可能なJavaエージェント実装のリストが記述されています。
新しいJavaエージェントのプロパティを入力し、ツールバーの[保存]をクリックして新しいエージェントを保存します。
新しいJavaエージェントを使用して、特定のタスクをバックグラウンドで実行できます。