会社には、統合ソリューションによって使用されるリソースを含んだ 単一のライブラリーを参照する、多数の統合ソリューションがあります。
このシナリオの初期構成には 2 つのアプリケーション (App1 と App2)、および 2 つのメッセージ・ブローカー・プロジェクト (Proj1 と Proj2) があります。それぞれのアプリケーションとメッセージ・ブローカー・プロジェクトには、 ライブラリー (MessageMappingLib) を参照するメッセージ・フローがあります。
次の画面キャプチャーでは、ライブラリーの開発リソースと、 ライブラリーを参照するアプリケーションおよびメッセージ・ブローカー・プロジェクトを示しています。この段階では、 ライブラリー参照はライブラリーの単一コピーへの参照です。ライブラリーに加えられた変更は、 アプリケーションの開発リソースに対して即座に利用可能になります。
次の画面キャプチャーでは、メッセージ・ブローカー・プロジェクトとアプリケーションが実行グループにデプロイされた後のリソースを示しています。デプロイメントの後、実行グループの中には MessageMappingLib ライブラリーの 3 つのコピーが存在します。
アプリケーションによって提供されるランタイム独立性のために、MessageMappingLib ライブラリーのコピーを含めて、App1 アプリケーションに 関連付けられたリソースは、 そのアプリケーション名の下にグループ化され、App1 アプリケーションに対してのみ可視であり使用可能です。同様に、App2 アプリケーションに 関連付けられたリソースは、App2 アプリケーションに対してのみ可視であり使用可能です。ただし、両方のメッセージ・ブローカー・プロジェクトのリソース (Proj1 メッセージ・ブローカー・プロジェクトからの Proj1Flow1 メッセージ・フロー、Proj2 メッセージ・ブローカー・プロジェクトからの Proj2Flow1 メッセージ・フロー、 および MessageMappingLib ライブラリーのもう 1 つのコピー) は、実行グループに直接保管されます。これらのリソースは相互に使用可能であり可視である他、実行グループに直接デプロイされた他のリソースに対しても使用可能であり可視である一方で、 アプリケーションに対しては使用不可であり可視ではありません。