Tomcat/Eclipse (Debian11.3.0)
2022/6/15
準備
たびたび使用しているTomcat+EclipseをDebian Bullseyeにインストールする。
Tomcat,EclipseはDebian packageにあるが、Tomcat10.xを使いたい。いろいろ環境設定を試すためTomcat他をユーザ領域にインストールする。
つぎのものをダウンロードする。
#ユーザ権限で実行
mkdir ~/app;cd ~/Downloads
#研究室内サーバからダウンロード
#wget http://www.takahashi.lab/~nt/technicalnote/debian11/tomcat/apache-tomcat-10.0.22.tar.gz
#wget http://www.takahashi.lab/~nt/technicalnote/debian11/tomcat/eclipse-java-2022-03-R-linux-gtk-x86_64.tar.gz
#wget http://www.takahashi.lab/~nt/technicalnote/debian11/tomcat/pleiades.zip
#wget http://www.takahashi.lab/~nt/technicalnote/debian11/tomcat/net.sf.eclipse.tomcat_9.1.6.jar
#JDKはopenjdk11を使うつもり
Tomcat
tomcat10.0をインストールする。
#ユーザ領域にインストール
cd ~/app
tar xf ~/Downloads/apache-tomcat-10.0.22.tar.gz
ln -s apache-tomcat-10.0.22 tomcat10
~/app/tomcat10/bin/startup.sh && chromium http://localhost:8080/
動作確認
~/app/tomcat10/bin/startup.sh && chromium http://localhost:8080/

tomcatを停止する。
webブラウザをリロードしてtomcatが停止していることを確認する。
~/app/tomcat10/bin/shutdown.sh
Eclipse
Eclipse(2022-03)をインストールする。
~/app
tar xf ~/Downloads/eclipse-java-2022-03-R-linux-gtk-x86_64.tar.gz
cp ~/Downloads/net.sf.eclipse.tomcat_9.1.6.jar ~/app/eclipse/plugins
cd ~/app/eclipse; unzip ~/Downloads/pleiades.zip
echo "-Xverify:none" >> eclipse.ini
echo "-javaagent:plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar" >> eclipse.ini
cd ~/app/eclipse; ./eclipse -clean
Eclipseを起動する。
Eclipseが起動し、「ようこそ」が日本語で表示される。

「ようこそ」を閉じる。
メニューが日本語で、メニューにTomcat(T)があり、メニューバーTomcatアイコン

があることを確認する。

設定からTomcatプラグインに関する設定を行う。

左ペインでTomcatを選択、右ペインでTomcatバージョンをバージョン9.x(+)、コンテキスト宣言モードServer.xmlを選択する。

この作業は省略してもよい。
パースペクティブをカスタマイズする。

ショートカットタブを選び、Java,Tomcatプロジェクトに
をつける。

myServlet
Tomcat上でwebアプリを動かす。
1.Tomcatプロジェクトをつくる。

プロジェクト名はmyServletにする。

プロジェクトmyServletができた。

2.サーブレットをつくる。

つぎのように設定する。
- パッケージ myServlet(デフォルトはプロジェクト名)
- 名前 HelloServlet(大文字で始まる。先頭が小文字だといろいろ言われることがある。)
- スーパークラスにjakarta.servlet.http.HttpServlet
継承されたメソッド

骨格ができた。

3.サーブレットを記述する。
パッケージ・エクスプローラでHelloServlet.javaを選び、右クリックする。メソッドのオーバーライド/実装を選び、いろいろ追記する。
(こんなことをしなくてもソースをタイプすればサーブレットは動く。)

doGetメソッドを実装する。

ソースにdoGetメソッドが追加された。

doGetメソッドに追記する。

4.web.xmlをつくる。
サーブレットを起動するには、サーブレットクラスとURLの関連が大切。

myServlet/WEB-INFの下にweb.xmlをつくる。(テキストファイルなのでgedit,vimなどで作成してもよい。)

- web-app 省略可能 なくてもサーブレットは動く。記述すると実行環境の確認時に便利
- servlet-name 任意でよいが、servletとservlet-mappingでserver-nameが一致していること
- servlet-class パッケージ名.クラス名(myServlet.HelloServlet)とする
- url-pattern 任意でよい。webブラウザからアクセスする際に必要になる。URLはhttp://localhost:8080/パッケージ名/url-patterになる。

メニューバー中の
をクリックし、Tomcatを起動する。
すでにTomcatが動いている場合は
で再起動する。
コンソールに起動メッセージが表示される。Servletが動かないときは、「コンソール」や「問題」をよく読む。

web.xmlに記述した内容を思い出して、webブラウザアドレスバーにサーブレットのURLを入力する。

myJSP
1.Tomcatプロジェクトをつくる。プロジェクトmyServlet中にJSPを追加する場合はプロジェクトを新規作成しない。

プロジェクト名はmyJSPにする。プロジェクト名はあとで必要になるのでしっかりメモする。

プロジェクトmyJSPができた。

2.JSPをつくる。

myJSPの下にhello.jspをつくる。ファイル名はあとで必要になるのでしっかりメモする。

エディタに対してコダワリがなければ「現在のエディター」を選択する。もちろん、コダワリを主張してもいい。

hello.jspができた。

hello.jspを完成させる。

メニューバー中の
をクリックし、Tomcatを起動する。
すでにTomcatが動いている場合は
で再起動する。
webブラウザを起動し、さきほど作ったメモを見ながらアドレスバーにJSPのURLを入力する。
URLはhttp://localhost:8080/プロジェクト名/ファイル名になる。
