アプリケーションでメタデータをカスタマイズできるのは、「カスタマイズ開発者」ロールで作業している場合のみです。このロールでは、IDE(「カスタマイズ・コンテキスト」ウィンドウなど)でカスタマイズ機能が有効化されますが、他の一部の機能は無効化されます(たとえば、カスタマイズ可能なオブジェクトの新規作成や、カスタマイズ不可のオブジェクトの編集はできません)。
カスタマイズ可能なアプリケーションには、複数のカスタマイズ・レイヤーを使用できます(例: industry
とsite
)。各レイヤーには複数のカスタマイズ・レイヤー値を使用できますが、実行時に各レイヤーから適用されるレイヤー値は1つのみです。
カスタマイズ可能なアプリケーションを「カスタマイズ開発者」ロールで開くと、JDeveloperによりadf-config.xml
ファイルが読み取られ、使用するカスタマイズ・クラスと優先順位が判別されます。また、CustomizationLayerValues.xml
ファイルも読み取られ、「カスタマイズ・コンテキスト」ウィンドウで使用可能にするレイヤー値が判別されます。
「カスタマイズ・コンテキスト」ウィンドウでは、カスタマイズ・レイヤーとレイヤー値を選択できます。ウィンドウに表示される選択済レイヤーは、ヒント・レイヤーと呼ばれます。ヒント・レイヤーには、「カスタマイズ開発者」ロールで作業中に行った変更が適用されます。
複数のカスタマイズ・レイヤーがある場合、「カスタマイズ・コンテキスト」ウィンドウにはadf-config.xml
で指定されているカスタマイズ・クラスと同じ順序でレイヤーが表示されます。たとえば、adf-config.xml
で次のように指定されているとします。
<adf-config xmlns="http://xmlns.oracle.com/adf/config" ...>
<adf-mds-config xmlns="http://xmlns.oracle.com/adf/mds/config">
<mds-config xmlns="http://xmlns.oracle.com/mds/config" ...>
<cust-config>
<match path="/">
<customization-class name="oracle.model.mycompany.IndustryCC"/>
<customization-class name="oracle.model.mycompany.SiteCC"/>
</match>
</cust-config>
</mds-config>
</adf-mds-config>
</adf-config>
「カスタマイズ開発者」ロールでJDeveloperを起動すると、次の「カスタマイズ・コンテキスト」ウィンドウの図に示すように、<cust-config>
要素内で最後にリストされているカスタマイズ・クラスがヒント・レイヤーとして機能します。
もう1つのカスタマイズ・レイヤーを選択すると、そのレイヤーは、カスタマイズの実装対象である新規のヒント・レイヤーになります。
複数のカスタマイズ・レイヤーからのレイヤー値を、指定の優先順位に従ってベース・アプリケーションのメタデータの最上位に適用できます。JDeveloperのエディタに表示されるメタデータは、ベース・アプリケーションのメタデータと(adf-config.xml
で設定された優先順位に従った)ヒント・レイヤーまでのカスタマイズ・レイヤーを組み合せたもので、各レイヤーの値は「カスタマイズ・コンテキスト」ウィンドウで指定したものです。
たとえば、次の「カスタマイズ・コンテキスト」ウィンドウの図は、ベース・アプリケーションにindustry
レイヤーのfinancial
レイヤー値のカスタマイズが適用されてから、site
レイヤーのremoteoffices
レイヤー値のカスタマイズが適用されることを示しています。
カスタマイズ済アプリケーションのカスタマイズ・コンテキストは、アプリケーションのベース定義に適用された一連のカスタマイズ・レイヤーにより定義されます。「カスタマイズ・コンテキスト」ウィンドウの最下部では、選択内容を反映してカスタマイズ・コンテキストが変更されます。
Copyright © 1997, 2009, Oracle. All rights reserved.