Hitachi

Cosminexus V11 BPM/ESB基盤 サービスプラットフォーム 解説


4.9.1 コンポーネント共通UOCの概要

コンポーネント共通UOCでは,次の2つのことができます。

〈この項の構成〉

(1) UOCクラスのインスタンス生成

UOCクラスのインスタンスは,HCSCサーバ起動時に作成され,メモリ上に保持されます。

UOCクラスのインスタンス生成の流れを次に示します。

  1. コンポーネント共通UOC用プロパティファイルの読み込み

    コンポーネント共通UOC用プロパティファイルを読み込み,UOCクラスの呼び出し元IDをkey情報,呼び出されるUOCクラスのクラスパスをvalueとするMap型のデータを作成し,jarファイル作成の処理へ設定します。

    プロパティファイルの読み込みに失敗した場合,メッセージログに例外ログ(KDEC11003-E)を出力したあと,HCSCサーバ起動処理を中断します。

  2. コンポーネント共通UOC用jarファイルの読み込みおよびインスタンス作成

    コンポーネント共通UOC用プロパティを読み込んで作成したMap型データからクラスパスを取得し,UOCクラスのインスタンスを生成します。

    生成したUOCクラスのインスタンスは,クラスインスタンスをvalue,クラスパスをkeyとするMap型データに格納します。

    クラスファイルの読み込みに失敗した場合,メッセージログに例外ログ(KDEC11002-E)を出力したあと,HCSCサーバ起動処理を中断します。

(2) UOCクラスの呼び出し

受付の共通処理部分,およびサービスアダプタの共通処理部分から呼び出すため,すべてのコンポーネントの処理でUOCクラスを呼び出すことができます。

コンポーネントの処理タイミングと,UOCクラスの呼び出しの有無を次に示します。

表4‒17 コンポーネントの処理タイミングと,UOCクラスの呼び出しの有無

種別

起動時

開始時

終了時

停止時

正常

フォルト

システム例外

標準受付

×

×

×

×

ユーザ定義受付

SOAP受付の場合

×

×

×

×

SOAP受付以外の場合

×

×

ビジネスプロセス

×

×

×

×

×

×

サービスアダプタ

×

×

×

×

(凡例)

○:UOCクラスを呼び出します。

×:UOCクラスを呼び出しません。

(a) UOCクラスへの入力情報

UOCクラスへの入力情報は,Map型のオブジェクトにまとめて渡します。

UCO用インターフェースで定義した定数(key)を基にデータを取得します。

定数(key)は,UOCクラスを作成する際にimplementsするインターフェースに定義します。

定義する定数を次に示します。

表4‒18 定義する定数

定数名(key名)

データ型

設定内容

COMPO_TYPE

int

1:サービスアダプタ

2:受付

COMPO_KIND

String

受付の場合

  • StandardWebService:標準受付(Webサービス)

  • StandardSessionBean:標準受付(SessionBean)

  • StandardWSR:標準受付(MDB(WS-R))

  • StandardDBQ:標準受付(MDB(DBキュー))

  • WebService:SOAP受付

  • TP1/RPC:TP1/RPC受付

  • FTP:FTP受付

  • HTTP:HTTP受付

  • MessageQueue:Message Queue受付

  • FileEvent:ファイルイベント受付

  • Kafka:Kafka受付

  • Custom:カスタム受付

サービスアダプタの場合

  • WebService:SOAPアダプタ

  • SessionBean:SessionBeanアダプタ

  • MDB_WSR:MDB(WS-R)アダプタ

  • MDB_DBQ:MDB(DBキュー)アダプタ

  • DB:DBアダプタ

  • TP1:TP1アダプタ

  • File:ファイルアダプタ

  • ObjectAccess:Object Accessアダプタ

  • MessageQueue:Message Queueアダプタ

  • FTP:FTPアダプタ

  • FileOperation:ファイル操作アダプタ

  • Mail:メールアダプタ

  • HTTP:HTTPアダプタ

  • Command:コマンドアダプタ

  • SFTP:SFTPアダプタ

  • Kafka:Kafkaアダプタ

  • Custom:汎用カスタムアダプタ

COMPO_ID

String

受付の受付IDまたはサービスアダプタのサービスID

TELEGRAM_DATA

CSCMsgTelegramManager

リクエスト電文または応答電文

MONITOR_SEND_DATA

Map<String, Object>

送信データ格納Map

DESTINATION_DATA

CSCMsgDestinationData

呼び出すサービスの宛先情報

注※

ユーザ定義受付(SOAP受付を除く)の場合だけ取得できます。

パラメタMapから取得する電文の内容を次に示します。

●電文

リクエスト電文や応答電文は,電文取得用API(CSCMsgTelegramManager)でUOCクラスに渡し,「#getHeader」または「#getBody」を使用して電文を取得します。

なお,電文はバイト配列で渡すため,XML電文の場合はDocument型などに変換する必要があります。

●宛先情報

SOAPユーザ定義受付以外のユーザ定義受付の場合に呼び出すサービスの宛先情報が取得できます。また,ユーザ定義受付のリクエスト受付時にサービスの宛先情報取得用APIを使用し,任意の値を設定することで,呼び出すサービスを変更できます。

(b) UOCクラスを呼び出すタイミング

UOCクラスを呼び出すタイミングと電文との関係を次に示します。

図4‒13 UOCクラスを呼び出すタイミングと電文との関係

[図データ]

  1. 受付ではサービスリクエスタからの要求電文をUOCクラスに渡します。

  2. サービスアダプタではサービス部品に渡す要求電文をUOCクラスに渡します。

  3. サービスアダプタではサービス部品から返る応答電文をUOCクラスに渡します。

  4. 受付ではサービスアダプタからの応答電文をUOCクラスに渡します。

注意

呼び出すサービスの宛先を変更した場合,リクエストトレースで出力される宛先は実際の宛先と異なることがあります。

(c) 性能解析トレースの出力

コンポーネント共通UOCを使用すると,性能解析トレースは必ず出力されます。性能解析トレースが出力されるタイミングは,UOCクラスの呼び出し直前と直後になります。

性能解析トレースファイルに出力される形式は,J2EEサーバの性能解析トレースと同様です。性能解析トレースファイルの詳細については,マニュアル「アプリケーションサーバ 機能解説 保守/移行編」の「7.3 Management Serverを利用した性能解析トレースファイルの収集」を参照してください。