Webプログラミング入門① 環境構築~画面出力

ここではeclipse/Apach/Tomcatを使用したWebプログラミングの入門編について説明していきます。
今回はeclipse(2022-12)での設定について説明していきます。eclipseの初期設定が未済の方はこちらで紹介していますので対応が完了してから進めてください。

eclipse 2022-12はダウンロードを行うと同時にApachとTomcatが付いてくるので特に追加でダウンロードが必要になるもの等はありません。そのため、eclipseを起動してApach/Tomcatで使用できるプロジェクトを作成して少し設定をするだけで画面を表示することができます。

Apatch/Tomcat用のプロジェクトを作成していきましょう。
eclipseを起動して[ファイル]-[新規]-[動的 Web プロジェクト]を選択します。

動的Webプロジェクトを選択すると以下のような画面が表示されるはずです。
表示された画面のプロジェクト名に任意の名前(私は「WebProject」としています)を入力し、
ターゲット・ランタイムをTomcat10(Java17)に設定し次へボタンを押下します。

次へを押下すると以下のような画面が表示されます。このぺージの設定は不要なのでまた次へを押下します。

さらに次にWebモジュールという以下の画面が表示されるので、「web.xml デプロイメント記述子の生成」にチェックをいれて完了を押下します。

作成が完了するとパッケージ・エクスプローラに入力したプロジェクト名のプロジェクトが作成されたことが確認できると思います。

ここからWebブラウザで表示させる用の画面用のコードを書いていきましょう。
いつものように作成したプロジェクトを右クリックして[新規]-[クラス]でクラスを追加します。
今回のクラス名は「HelloWeb」としましょう。(クラスの追加方法はこちらを参照)

それではコードを書いていきます。
今回使用するコードのメソッド名等を変更するとエラーとなる可能性があるため変更しないでください。コードは以下の通り。

import java.io.IOException;
import java.io.PrintWriter;
import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;

public class HelloWeb extends HttpServlet {

    /**
     * デフォルトコンストラクタ
     */
    public HelloWeb() {
    }

    /**
     * Http通信のGet用メソッド
     * 
     * @param request Httpリクエスト
     * @param response Httpレスポンス
     * @throws ServletException サーブレット例外
     * @throws IOException 入出力例外
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
        PrintWriter out = response.getWriter();
        out.println("Hello Web World!");
    }
}

次にWebサイトを公開際の設定ファイルを編集していきます。
パッケージエクスプローラの[src]-[main]-[webapp]とフォルダを辿っていき、その中のweb.xmlをダブルクリックして開いてください。

ダブルクリックして開くと下記のような画面が表示されるため、下のほうにある[ソース]のタブをクリックしてソースを開きましょう。

ソースが表示されたら、内容を以下のように書き換えてください。

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
 xmlns="https://jakarta.ee/xml/ns/jakartaee" 
 xmlns:web="http://xmlns.jcp.org/xml/ns/javaee" 
 xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_5_0.xsd" 
 id="WebApp_ID" version="5.0">
  <display-name>WebProject</display-name>
  <welcome-file-list>
  	<welcome-file>index.html</welcome-file>
  	<welcome-file>index.jsp</welcome-file>
  	<welcome-file>index.htm</welcome-file>
  	<welcome-file>default.html</welcome-file>
  	<welcome-file>default.jsp</welcome-file>
  	<welcome-file>default.htm</welcome-file>
  </welcome-file-list>
  <servlet>
 	<servlet-name>Hello</servlet-name>
 	<servlet-class>HelloWeb</servlet-class>
 </servlet>
 <servlet-mapping>
 	<servlet-name>Hello</servlet-name>
 	<url-pattern>/</url-pattern>
 </servlet-mapping>
</web-app>

上記のコードに書き換えると以下のようになるはずです。

コードの修正が終わったら、次に使用するライブラリのインポートを行います。
今回作成したプロジェクトを右クリックして[ビルド・パス]-[ビルド・パスの構成]を選択してください。

選択すると以下のような画面が表示されます。
表示されたプロジェクトのプロパティで[ライブラリー]タブを選択します。

次にライブラリーのタブで[モジュールパス]を選択した後に外部JARの追加を押下します。

外部JARの追加を押下するとエクスプローラーが開かれるため、eclipseのフォルダの1階層上のフォルダにある「Tomcat」フォルダ配下の「10」(バージョン)、「lib」の順にフォルダを開いて「servlet-api.jar」というファイルを探して選択します。


選択すると、先ほどのモジュールパス部分に「servlet-api.jar」のファイルが追加されたことが確認できます。確認ができたら適用して閉じるを押下しましょう。

次に起動するサーバの設定をします。
eclipseのサーバタブからTomcat10_Java17をダブルクリックしてサーバの設定画面を開きます。
開いた設定画面の「サーバーロケーション」の設定で「Tomcat インストールを使用」を選択して
Ctrl + Sで変更を保存します。

これで大体の設定が完了したため、サーバの起動の準備をしていきます。
作成した「HelloWeb.java」を右クリックして[実行]ー[サーバーで実行]を選択します。

サーバーで実行の画面が表示されたらTomcat10_Java17を選択し、完了を押下します。

完了するとコンソールに赤い文字でいろいろ表示された後、ブラウザでWebページが表示されます。
HelloWebクラスで「out.println()」の中に書いた文字列が無事表示されましたね!

続いてサーバの停止方法について説明します。
一度サーバを立ち上げると、停止するまで稼働し続けるため、プログラムを変更したり使わないときにはサーバを停止する必要があります。
eclipseに戻り、サーバーのタブから起動しているサーバーを選択し、右側にある赤い■のボタンを押下することでサーバを止めることができます。

停止すると以下の画面のようにコンソールに「~を破棄します」のようなメッセージが表示され、停止ボタンがグレーになったら停止が成功しています。

今回はここまでとさせていただきます。
次回はJSP画面の表示を行います。
次回:Webプログラミング入門② JSP画面の表示

コメント

タイトルとURLをコピーしました