2.1 WAM、Webroutine、ウェブレット、ウェブレット・テンプレートの関係
「WAMの概論」 を読んで、WAMやWebroutineとは何かというイメージが掴めたと思います。ですので、より深くウェブレットやウェブレット・テンプレートについて、またこれらがWAMやWebroutineとどのようにやり取りをしながらプレゼンテーション層を構築・カスタマイズするのかについて焦点を当てて説明していきます。
ここで、WAMの概念をいくつか確認してみましょう。これらの概念の多くは、既に馴染みがあることでしょう。
- 簡単にまとめると、各Webroutineは2つの部分から構成されています。RDMLXの部分は、アプリケーション・ロジックをカプセル化したものであり(アプリケーション・ロジック層)、XSL/XMLの部分はプレゼンテーション・インターフェースを定義しています(プレゼンテーション層、別名ウェブデザイン)。
- 1つのWAMにはWebroutineが1つ以上含まれます。
- 全てのWebroutineは、簡単なWEBROUTINE / ENDROUTINE構造を使ったWAMのRDMLXコードで定義されています。Webroutineの定義には、フィールドや作業リストの情報をプレゼンテーション層とやり取りするためのWEB_MAPコマンドを含むことができます。
- WAMのRDMLXコードにはメソッド・ルーチン(MTHROUTINE)とサブルーチン(SUBROUTINE)も含まれています。これらの概念をもう一度確認したい場合は、 『LANSAテクニカル リファレンス ガイド』を参照してください。
- Webroutineは通常、ユーザー・インターフェースとして表示されますが(例えば、ウェブ・ブラウザでのHTMLなど)、適切なテクノロジ・サービスが定義されている場合は、非ビジュアルなプレゼンテーションとして生成することもできます。
- 通常LANSAエディターでWebroutineを開くと、このWebroutine用に生成された拡張スタイルシート言語 (XSL)オブジェクトが開かれ、これを確認したり、必要に応じて修正することができます。LANSAエディターでは、内部で定義されたLXML(XMLタグを表すリスト)、及びビルド中に生成されるXSL/XMLオブジェクトに基づいて初期表示が行われます。これらのオブジェクトについては、後ほどもう一度確認します。
- 1つのウェブレットにはウェブレット・テンプレートが1つ以上含まれます。ウェブレット・テンプレートは、ウェブレットがどのようにテクノロジ・サービスや、異なるXSLを必要とする他のバリアント(インライン・リストなど)に適用されるかを決定します。
- Webroutineの表示は、LANSAエディターでWebroutineの[Web Page] タブ上にウェブレット・テンプレートをドラッグ・アンド・ドロップすれば修正することができます。
- ウェブレットテンプレートはテクノロジ・サービス固有のものです。つまり、一貫性のあるウェブレット一式がLANSAリポジトリで表示されている一方で、現在のテクノロジ・サービを変更されると、使用可能なウェブレット・テンプレートのリストが修正されるということです。
以下のスケッチは、Webroutine(アプリケーション・ロジック)と、生成されたXSL、XMLや様々なウェブレット(プレゼンテーション層)との関係を示しています。