Lesson 3
レッスン2で扱ったexteNd Composerプロジェクトは、exteNd Directorプロジェクトの一部になります。exteNd Composerはアプリケーションのデータ層として使用され、exteNd Directorはプレゼンテーション層として使用されます。 2つの層に明確に分けられていると、アプリケーションの一部を変更するとき、他の部分への変更は必要としないで済む場合があります。
このレッスンでは、exteNd Composerサービスのサービストリガを作成してアプリケーションを展開し、exteNd Composerを使用してサービスのSOAPインタフェースをテストします。
時間を省くため、exteNd Composerプロジェクトの追加など、生成物がいくつか作成されているテンプレートプロジェクトを使用します。 これらの生成物についてはレッスン 4, exteNd Directorプロジェクトの作成で学んでいきます。 必要とする生成物を作成した後に、完成したアプリケーションをテストします。
[スタート]>[プログラム]>[Novell exteNd 5.0]>[Director] メニューの順に移動し、[Director Designer]を選択してexteNd Directorを起動します。
[検索場所]ドロップダウンリストをクリックして、プロジェクトフォルダへ移動します。 プロジェクトフォルダは、「D:\GuidedTour\template\RequestUserInfoProject」になります。
ナビゲーションペインのビュー
を[アーカイブレイアウト]ビューに変更します。
「アーカイブレイアウトビューで表示されるもの」 このビューは、サーバへ展開されるアーカイブの構造的なビューになります。 プロジェクト内の様々な生成物がアーカイブ内のどこに配置されるかを示します。 デフォルトのビューは、「ソースレイアウト」 で、生成物が実際には開発ファイルシステムのどこに保存されているかを示します。 J2EEでは、アーカイブ内のどこに生成物が置かれているかが重要となります。
exteNd ComposerおよびexteNd Directorプロジェクトのすべての生成物は、開いたプロジェクトファイルに関連した場所に位置するフォルダのファイルとして保存されています。
「リソースセット」 exteNd Directorの特徴の一つで、必要となる展開の数を減らすことにより、テストに費やされる時間を少なくします。 (リソースセットについての詳細は、『Developing exteNd Director Applications』のexteNd Directorでのリソースセットの使用に関する章を参照してください。)
exteNd Directorプロジェクトには、「resourceset.xml」という設定ファイルがあります。リソースセットをexteNd DirectorとexteNd Application Server (または他のアプリケーションサーバ)で正しく使用するには、ファイルの変数がプロジェクトのドライブ内における実際のロケーションを示している必要があります。
現在のプロジェクトのロケーションは、このプロジェクトが最初に作成されたときのロケーションとは異なっている場合がほとんどですので、ここでこの変数を変更します。
[resourceset.xml]ファイルをナビゲーションペイン内の詳細ペインでダブルクリックし、エディタペインで開きます。
[WARLOCATION]キーを探し、その値をテンプレートプロジェクトを置いた実際のロケーションを示すように変更します。たとえば次のようになります。 D:\GuidedTour\template\RequestUserInfoProject
exteNd Composerサービスは、そのサービスのユーザに代わってexteNd Composerランタイムとの情報のやりとりを行う、Javaサービストリガを必要とします。このエクササイズで作成するexteNd Composerサービスは、SOAPを利用するWebサービスとして呼び出されます。
Webサービスを扱うには、WSDLを(エクササイズ 2-9: WSDL(Web Services Definition Language)の作成にて)作成した際に特定したURLでリッスンするJavaサーブレットが必要になります。
このエクササイズでは、exteNd Composerによって提供された一般的なサーブレットを、特定したURLでリッスンするよう設定します。
[Webサービスの詳細]ブロックの[WSDL]ドロップダウンリストで[ViewUserInfo]が選択されていることを確認します。 [次へ]をクリックします。
exteNd Director 開発環境は、ポートレットやXFormなどのexteNd Director生成物を視覚的に作成する機能を提供するだけでなく、プロジェクトを構成するJ2EE特定の生成物の管理、J2EEアーカイブの作成および展開にも使用されます。 このエクササイズでは、多少本題から離れ、Webベースの開発を管理するのに便利なexteNd Directorの特徴のいくつかを見ていきます。
前回のエクササイズでexteNd Composerサービストリガを作成した際、ソースファイルを開かなかったことにお気づきになったかもしれません。 本当にサービストリガがあるのかどうか疑問に思われたことでしょう。
その答はイエスです。exteNd Composerランタイムは、SOAPの要求を受け入れるサーブレットの実装を提供し、exteNd Composerサービスを呼び出してSOAPの応答をフォーマットします。 このサーブレットは、Webアーカイブの「web.xml」 (J2EE Webアプリケーション記述子)ファイルの初期化パラメータを設定することにより、適切なexteNd Composerサービスを呼び出すよう設定されています。 次のエントリを見ていきす。
ナビゲーションペインのフォルダペインを、プロジェクトのRequestUserInfo.spf エントリが表示されるまで上へスクロールし、それを選択します。
[作成オプションの選択]ダイアログが表示され、このダイアログを次回からは表示しないようにするには、[いいえ、今は作成しない。プロジェクトを自動的に作成しない]を選択して、[OK]をクリックします。
エディタペインで、「com.novell.composer.userinfo.ViewUserInfoSoapService」というエントリが表示されるまで、下へスクロールします。 次がサーブレットの設定になります。
web.xmlファイルはXMLファイルですので、exteNd Director 開発環境で実際のXMLにアクセスすることができます。 しかし多くの場合、このファイルをより直感的に管理できるよう、ビジュアルエディタを使用してファイルの内容を編集することになります。 マウスを右クリックしてプロパティインスペクタを開くと、このファイルのエレメントを表示あるいは変更できます。 プロパティインスペクタでは、使っているエレメントの有効値を表示したり、相互参照を入力するときにそのファイルの別のエントリから値を選択したりできます。
さらに下へスクロールすると、このサーブレットのServlet Mappingエントリがあります。これは、このインスタンスが利用する正しいURLのパターンを設定します。
exteNd Director 開発環境では、アプリケーションサーバの各タイプに対して個別のサーバプロファイルを使用します。プロファイルは、そのタイプのアプリケーションを展開する際に必要となる詳細を定義します。 『ガイドツアー』では、デフォルトのプロファイルを使用しており、これはローカルコンピュータで稼動しているexteNd Application Serverへ展開するためのプロファイルです。 このプロファイルを確認するあるいは新規のプロファイルを作成する場合は、[ツール]>[プロファイル]の順に選択し、プロファイルエディタ を開きます。

これでexteNd Application Serverにアプリケーションを展開する準備が整いましたので、exteNd ComposerサービスをWebサービスとしてテストします。
ナビゲーションペインのフォルダペインを、プロジェクトの「RequestUserInfo.spf」エントリが表示されるまで上へスクロールし、それを選択します。
マウスを右クリックしてコンテキストメニューを開き、[展開計画を開く]を選択します。
展開計画は、アプリケーションを正しくexteNd Application Serverに展開するのに必要な、サーバ特有の詳細を定義します。 web.xml記述子ファイルの情報に基づいて作成および保守されています。 展開する前には、常に展開計画を見直し保存することをお勧めします。
ヒント: 別のサーバに展開をするときは、この計画で使用されたプロファイルを変更す る必要があります。
exteNd Director 開発環境の出力ペインで「展開が正常に完了しました」というメッセージが表示されると、この展開は完了したことになります。
この最初の展開は、通常よりも若干時間がかかりました。これはアプリケーションがサーバへ展開され起動したこと以外に、データベースもまた初期化されたためです。 このデータベースとは、エクササイズ 1-4: JDBC接続プールで接続プールを作成、定義したデータベースです。

exteNd Composerプロジェクトには、展開されたViewUserInfoをSOAPサービスとしてテストするサービス(TestViewUserInfo)があります。 このサービスには、SOAPバインドを使ったWebサービスを利用するためのアクション(WS交換)があり、このアクションはexteNd Composerによって使用されます。 このエクササイズでは、このサービスを使い、先ほど展開したアプリケーションをテストします。
テストの一環として、Composerのコンポーネントとサービスにおけるログアクションをサーバコンソールへ出力します。 ログを出力をさせるには、Composer管理者コンソールを使用してサーバのログしきい値を設定します。
アドレスバーに、「http://localhost/exteNdComposer/」と入力し、<Enter>キーを押します。
exteNd Application Serverの管理者ユーザIDとexteNd 5のインストール時に提供されたパスワードを入力して、[OK]をクリックします。
exteNd Composer Designerを開きます。 (まだ開いたままでしたら、<Alt>+<Tab>キーで切り替えることができます。)
[実行が完了しました]ダイアログの[OK]をクリックします。 エディタの出力DOM内のSOAPサービスによって返された結果を見てください。
サーバコンソールを見ると、exteNd Composerランタイムからのログの結果を見ることができます。
以上で作業は完了です。 exteNd Composerサービスを完成させ、SOAPサービストリガと共に展開することに成功しました。
[ファイル]>[終了]の順に選択してexteNd Composer Designerアプリケーションを終了します。 『ガイドツアー』の残りの章では、exteNd Composerは必要ありません。
次のレッスン 次のレッスンでは、エンドユーザにサービスの使用を許可するexteNd Directorポータルアプリケーションを作成します。
Copyright © 2004 Novell, Inc. All rights reserved. Copyright © 1997, 1998, 1999, 2000, 2001, 2002, 2003 SilverStream Software, LLC. All rights reserved. more ...