xamppのTOMCATを使う

xamppのTOMCATを設定する

xamppのTOMCATを起動しよう

以前であればそのまま動いたような気がするんですが、動きませんでした。(2022/6/16現在: XAMPP controle panel ver3.3.0)。色々設定しないといけないようです。

環境変数を設定する

私はMicrosoftのOpenJDKを入れたので、このようになっていますが、各社で異なります。調べてシステムの環境変数に設定してください。

システム環境変数
変数名内容
CATALINA_HOME C:\xampp\tomcat
JAVA_HOME C:\Program Files\Microsoft\jdk-17.0.2.8-hotspot

レジストリを設定する

oracleのJDKをインストールした場合はレジストリーが登録されますので、TOMCATがそのまま起動できますが、MicrosoftのOpenJDKを入れたところレジストリーが登録されなかったのでTOMCATの起動BATが反応せず、起動エラーになりました。そこでOracleを入れるのが正解でしょうが、私はレジストリーで胡麻化しました。

	+---HKEY_LOCAL_MACHINE
	    \---SOFTWARE
	        +---JavaSoft
	            \---Java Development Kit
	                \17.0.2.8
	                      JavaHome       REG_SZ    c:\Program Files\Microsoft\jdk-17.0.2.8-hotspot
	                      MicroVersion   REG_SZ    0

もちろんバージョン等もそれぞれ違うと思います。インストールした方がいいかな。すいませんO*acleあまり好きじゃないので

MANAGER APPを起動可能にする

ここまでやるとxamppのTOMCATが起動できると思います。 このあと、TOMCATのManager APPが使いたいので、その設定をします。

tomcat-users.xml

tomcat-users.xmlの最後の方をこのように書き換えます

	<role rolename="tomcat"/>
	<role rolename="role1"/>
	<role rolename="manager-gui"/>
	<role rolename="manager-status"/>
	<role rolename="manager-script"/>
	<role rolename="manager-jmx"/>
	<role rolename="admin-gui"/>
	<role rolename="admin-script"/>
	<user username="tomcat" password="s3cret" roles="tomcat"/>
	<user username="both" password="s3cret" roles="tomcat,role1"/>
	<user username="role1" password="s3cret" roles="role1"/>
	<user username="manager" password="s3cret" roles="manager-gui,manager-status,manager-script,manager-jmx"/>
	<user username="admin" password="s3cret" roles="admin-gui,admin-script"/>
	</tomcat-users>

このあと一度TOMCATをSTOP,STARTしてからadminをクリックします。するとTOMCATのホーム画面がでます。右側にある「Manager App」をクリックして、先ほど入れたIDとパスワードを入れます。managerとs3cretですね。

ログインするとそこに各アプリケーションの状態が出ています。再ロードしたり、起動停止などができます。

WebSampleをTOMCATで起動する

なにはともあれHello,worldのTOMCAT版

左のプロジェクトリストからWebSampleを選び、右クリックしてエクスポートを選びます

export war

すると warファイルを選択できます。warファイルは「Webアーカイブ」ファイルで、プロジェクトリソースや配備記述子が含まれます。今回はこれを使って配置します。先ほどManager Appの設定をしたのはそのためです。

export war

適当なフォルダーに出力します。続いてさきほどのManager App画面を開きます。その下の方にwarを指定して配置する場所があります。

war配置

ここで先ほどのwarファイルを選択して、配置ボタンを押します。

war配置

アプリケーションの中に入ってくるので、そのリンクをクリックするとアプリケーションが起動されます。

実行

さて、配置されると何が起きるのでしょう。xamppのtomcatの場合は以下のようにwebappsフォルダーにwarファイルとその展開されたフォルダーが現れます。

展開

eclipseと違うところは、eclipseではWebContentにindex.htmlを置いたはずですが、

WebContent

プロジェクトフォルダーに直接、index.htmlが変わっていることです。

WebContent

そして、配置解除を行うと、これらのwarとフォルダーは消えます

配置解除

なくなっています

配置解除