この例では、クライアントは作業域を作成し、その作業域に サイト ID と優先順位の 2 つのプロパティーを挿入しています。 サイト ID は読み取り専用プロパティーとして設定されます。クライアントは作業域の受信側が サイト ID をオーバーライドすることを禁止しています。 このプロパティーは company キーと、SimpleSampleCompany オブジェクトの静的インスタンスから構成されています。 優先順位プロパティーは priority キーと、SimpleSamplePriority オブジェクトの静的インスタンスから構成されています。 オブジェクト型は次のコード例で示しているように定義されます。
public static final class SimpleSampleCompany { public static final SimpleSampleCompany Main; public static final SimpleSampleCompany NewYork_Sales; public static final SimpleSampleCompany NewYork_Development; public static final SimpleSampleCompany London_Sales; public static final SimpleSampleCompany London_Development; } public static final class SimpleSamplePriority { public static final SimpleSamplePriority Platinum; public static final SimpleSamplePriority Gold; public static final SimpleSamplePriority Silver; public static final SimpleSamplePriority Bronze; public static final SimpleSamplePriority Tin; }
クライアントはその後、リモート・オブジェクトに呼び出しを作成します。 作業域は自動的に伝搬されます。リモート・オブジェクトのどのメソッドも、 作業域の引数を取りません。 リモート側では、まず SimpleSampleBean によって要求が処理されます。 SimpleSampleBean は最初に、作業域からサイト ID と優先順位プロパティーを読み取ります。 この Bean は次に、インポートした作業域への直接の書き込みと、 読み取り専用サイト ID プロパティーのオーバーライドを行おうとして、それに失敗します。
SimpleSampleBean は、ネストされた作業域を正常に開始して、クライアントの優先順位をオーバーライドし、 次に、もう 1 つの Bean である SimpleSampleBackendBean を呼び出します。 SimpleSampleBackendBean は、作業域からプロパティーを読み込みます。 この作業域は、クライアントに設定されたサイト ID と、SimpleSampleBean に設定された優先順位を含んでいます。 最後に、SimpleSampleBean はそのネストされた作業域を完了し、 サイト ID プロパティーに基づいたメッセージを書き込んで戻ります。
このアプリケーションのインプリメンテーションについては、トピック作業域を使用するアプリケーションの開発で説明しています。