注: 本ツールは現在ESB Mule1.4.1に移行中です。以下の説明はSVNリポジトリのコードに適用されます。
ESB Muleコンフィグレーション・ビジュライザーは、ESB MuleのXML設定ファイルから設定グラフを生成します。以下は生成されたグラフのサンプルです:
ツールの実行
前提ソフトウエア
本ツールのソースコードをSVNからソースコードをチェックアウトして、ビルドするためにJava1.4とMaven2.0.6が必要です。
ソースコードをトランクからチェックアウトする
ビルド
visualizerディレクトリで、プロジェクトをビルドする
実行
Visualizerはコマンドラインからも実行することができますが(配布ファイルのREADME.txtを参照してください。)、Mavenプラグインとして使われるように開発されました。
オプション
オプションはMavenのpom(プロジェクト・オブジェクト・モデル)で指定します。
| オプション |
説明 |
デフォルト |
必須 |
| files |
ESB Mule設定ファイル一覧 |
|
○ |
| exec |
グラフを生成をする実行ファイル。 |
./win32/dot.exe for Windows, which dot for Unix |
× |
| workingdir |
作成するファイルの接頭辞パス。 |
target |
× |
| outputdir |
グラフ・ファイルの生成先ディレクトリ。 |
|
× |
| outputfile |
作成するファイル名。 |
入力ファイル名 + 「.gif」 |
× |
| caption |
生成するグラフの見出し。 |
設定ファイルの「id」属性 |
× |
| mappings |
マッピング・ファイルへのパス(下の参照) |
|
× |
| keepdotfiles |
一時ファイルを保存する。 |
? |
× |
| combinefiles |
全てのファイルを一つの図に書き出すか。 |
false |
× |
| urls |
? |
? |
× |
| config |
? |
? |
× |
| templateprops |
? |
? |
× |
| showall |
全てのパラメータを強制的にtrueに設定する。 |
false |
No |
| showconnectors |
図にコネクタを含むか。 |
true |
No |
| showmodels |
? |
false |
× |
| showconfig |
? |
false |
× |
| showagents |
? |
false |
× |
| showtransformers |
? |
false |
× |
ファイル結合
ファイル結合は複数機器からのESB Mule設定ノードを結合した表示できるので、ESB Muleアプリケーションの全体を見ることができる便利な機能です。
対応付け(Mapping)
対応付けは、ESB Mule XML設定ファイルに定義されていない関係を論理的にグラフのオブジェクト間で定義する機能です。これらのマッピングは明示的にコンポーネント間のルート・パスが定義されていない場合のみ必要です。(例:動的ルーティングの場合)
マッピングは .properties ファイルにキー/値の組み合わせで定義します。キーは図への値に対応します。これらの値は生成されるグラフ上のオブジェクト名を使うために、コンポーネント, エンドポイント, ルータ,その他のオブジェクト間の関係を定義することができます。
マッピングを使う例として挙げられるのは、メッセージにreplyToエンドポイントが設定され、ESB MuleがreplyToを参照して送り先のコンポーネントを判断する場合です。ローンブロカー例題を例にすると、銀行のreplyToエンドポイントは以下のようになります:
宛先一覧のように動的ルータを使っている場合は、ルータからエンドポイントへの道順を定義したい場合もあります。
これは、 StaticRecipientList ルータから LenderService までの 銀行(Bank) エンドポイントをマップするように指示します。
重複したエンドポイントのマッピング
場合によっては、受信(inbound)エンドポイントは送信(outbound)エンドポイントと同じように表されません。例えば、SOAPの送信エンドポイントにはメソッド・パラメータがありますが、SOAPの受信エンドポイントにはありません。
これらのエンドポイントを論理的に対応付けて、グラフに表れるようにでいます。
例:
「equals」拡張子は構成グラフ(Config Graph)にその2つのオブジェクトは同じであることを伝えます。
2つのエンドポイントを対応付けた後に1つの隠したいと思います。。。
ノードの隠し方
ノードを隠すには、対応ファイル(mapping file)に以下の設定を記述します。
ヒント
エンドポイント識別子(Endpoint Identifier)をESB Mule XML設定ファイルで使って実エンドポイントと論理エンドポイントを対応付けるのは良い習慣です。構成グラフ用の対応付けを設定するのに便利であり、実名の代わりに論理名を使うことができます。