カタログ作成
ネット上で買い物する場合、カタログを見て気に入ったものがあれば買い物かごに追加します。まずはカタログをブラウザに表示する機能を作成します。カタログは日々変化するものであるためデータベースに格納するのが普通の方法ですが、データベースに接続する方法とブラウザにカタログを表示する方法を同時に説明すると分かりづらいため、最初は、ブラウザにカタログを表示するための情報は固定したものを用意しておき、それをブラウザに表示します。表示が成功した後、カタログに表示する銘柄をデータベースの銘柄テーブルから取得し、その情報をもとにブラウザに表示するようにします。
トップ画面の作成
まずは「芋焼酎酒店」のトップ画面を作成します。第7回で認証画面と入れ替える予定です。サーブレットにアクセスするための画面となります。
第2回では画面を添付しての説明でしたが、今回からは操作や指定の方法が分かりづらい場合以外は、メニューからの操作を記述するにとどめます。第2回でも説明したように、最初にプロジェクトを作成する必要があります。この場合、[ファイル]-[新規プロジェクト]-[Java Web]-[次へ]というように記述します。この操作を行うと[名前と場所]画面が開きます。プロジェクト名に「ImoshochuWeb01」を入力し[次へ]をクリックします。[サーバーと設定]-[フレームワーク]-[完了]と操作します。途中の設定はデフォルトのまま、フレームワークも使用しないのでそのまま[完了]ボタンをクリックすると、左上のペインのプロジェクトタブに「ImoshuchuWeb01」というプロジェクトフォルダが作成されるはずです。名称がnullになっている場合は、nullのアイコンを右クリックし[名前を変更]を選択し[名前を変更]ボタンをクリックすると表示されるようになります。
プロジェクトフォルダの[Webページ]アイコンを右クリック して[新規]-[HTML]と選択すると[名前と場所]画面が表示されます。名前に「ImoshochuWelcome」と入力し、場所はWEB-INFとなっていますが、HTMLは静的ファイルであるため、Webページフォルダを指定します。[完了]ボタンをクリックするとプロジェクトフォルダのWebページの下にImoshochuWelcome.htmlファイルが作成されていることが分かります。index.jspは不要なので削除します。図1がこの時点のプロジェクトフォルダの構成になります。
自動的に作成されたImoshochuWelcome.htmlをダブルクリックするとエディタが開きます。titleとbodyを書き換えたものが図2です。
HTMLを確認するのにGlassFishを起動する必要はありませんが、これから必要になるため図3で説明します
- A:サーバーを起動
- B:サーバーをデバッグモードで起動
- C:サーバーを再起動
- D:サーバーを停止
- E:サーバーの状態を再表示
今のところ、A、C、Dを使えれば大丈夫ですが、より生産性を高めるためにはBやEの使い方も習得する必要があります。NetBeans自体の説明が当連載の目的ではないためBやEの使い方は説明しません。単にHTMLを確認するだけであれば、ImoshochuWelcome.htmlファイルを右クリックし[ファイルを実行]をクリックするだけでGlassFishが起動します。起動のログは図4の通りです。応用編で説明予定のJBI(Java Business Integration)というSOAのフレームワークもスタンバイ状態であることが分かります。
サーバーの起動と同時にWebブラウザが起動し図5のようにImoshochuWelcome.htmlが表示されます。Servletを呼び出す機能もない静的な画面です。カタログを表示するために呼び出すServletができ上がった時点で呼び出すためのタグを追加します。
カタログを作成するためのServletを作成
ImoshochuWeb01プロジェクトを右クリック。[新規]-[サーブレット]-[名前と場所]と操作します。クラス名は「ImoshochuCatalog」と入力し、パッケージには「jp.kawakubo」と入力します。第2回で説明したとおりWebで公開しないのであればパッケージ名はtest01などでも構いません。[次へ]ボタンをクリックすると[サーブレット配備を構成]画面が表示されます。
画面上部に[配備記述子(web.xml)に情報を追加]というチェックボタンがあります。デフォルトのままチェックは入れたままにします。URLパターンもデフォルトのままで構いません。あるいはブラウザのURL上にServletの名前のまま表示させたくないのであれば、別の名前を付けることで実現できます。[完了]ボタンをクリックします。
配備記述子とは、NetBeansなどで作成したものをGlassFishなどのアプリケーションサーバに乗せるためのものです。第2回のServletの説明でServletやJSPなどのWebコンポーネントはWebコンテナ上で動くと記述しましたが、そのWebコンテナ上に乗せるために必要なものです。
トップ画面からServletを呼び出せるようにする
ImoshochuWelcome.htmlからImoshochuCatalogを呼び出すためには、ImoshochuCatalogを図6のように、ImoshochuWelcome.htmlを図7のように書き換えます。両ファイルを保存したのち、HTMLファイルを右クリックし[ファイルを実行]を選択すると図8のように[芋焼酎カタログへ]ボタンが追加されています。このボタンをクリックすると図9の画面が表示され、Servletの呼び出しが成功したことが分かります。








![図8.トップ画面の[芋焼酎カタログへ]ボタンの確認](http://cz-cdn.shoeisha.jp/static/images/article/4841/GlassFish_4_108_s.gif)
