Strutsのサンプルを動かしてみる
Strutsはバイナリでもあるんだけど,なんとなくソースから構築をこころみた.が,JDBCのライブラリがないとビルドに失敗する.で,断念.で,Jakartaからバイナリを落す.
せっかくだからStrutsのサンプル用にサーブレットコンテキストを作成してみる.server.xmlを見ると,
で,$TOMCAT_HOME/wabappsにディレクトリを作成するとTOMCATがそいつをコンテキストとしてくれる.今回はこいつを使用するのではなく,別の場所にコンテキストを作成してみる.
デフォルトとは違う場所にコンテキストを作成するにはserver.xmlのHost要素の内容にContext要素を記述する.
あと必要があれば,apacheと連係するためにhttpd.confでJkMountを書く.必要があるかどうかは要素Contextの属性pathの値による.
<Host name="localhost" appBase="webapps" unpackWARs="true" >となっているので,Tomcatのコンテキストはデフォルトでは$TOMCAT_HOME/webappsの下である.なお,DebianパッケージではWARファイルをTomcat起動時に自動的に展開するための属性unpackWARsがfalseになっていた.
で,$TOMCAT_HOME/wabappsにディレクトリを作成するとTOMCATがそいつをコンテキストとしてくれる.今回はこいつを使用するのではなく,別の場所にコンテキストを作成してみる.
デフォルトとは違う場所にコンテキストを作成するにはserver.xmlのHost要素の内容にContext要素を記述する.
<Context path="/struts-examples/example"
docBase="/home/tomcat/struts-examples/struts-example"
debug="0" reloadable="true" />
<Context path="/struts-examples/blank"
docBase="/home/tomcat/struts-examples/struts-blank"
debug="0" reloadable="true" />
<Context path="/struts-examples/upload"
docBase="/home/tomcat/struts-examples/struts-upload"
debug="0" reloadable="true" />
<Context path="/struts-examples/documentation"
docBase="/home/tomcat/struts-examples/struts-documentation"
debug="0" reloadable="true" />
<Context path="/struts-examples/exercise-taglib"
docBase="/home/tomcat/struts-examples/struts-exercise-taglib"
debug="0" reloadable="true" />
これでwebappsディレクトリの下ではない属性docBaseの値が示すパスがコンテキストとなる.そして属性pathの値をいれるとそこへアクセスできる.あと必要があれば,apacheと連係するためにhttpd.confでJkMountを書く.必要があるかどうかは要素Contextの属性pathの値による.
JkMount /struts-examples ajp13 JkMount /struts-examples/* ajp13
さて,前節のコンテキストの作成方法を踏まえて,Strutsのサンプル用コンテキストを作成してStrutsのサンプルを見てみる.
まず,前節で作成した要素Contextの属性docBaseで指定したパスに実際にStrutsのサンプルを置く.
まず,前節で作成した要素Contextの属性docBaseで指定したパスに実際にStrutsのサンプルを置く.
mkdir /home/tomcat/struts-examples cp struts-example.war /home/tomcat/struts-examples/同様にしてstruts-blank.warやstruts-upload.warなどを置く.上記のように,server.xmlでunpackWARs="true"とすれば,warを置くだけで勝手に展開してくれるはずだが,なぜかしてくれない(wabappsの下においても展開してくれなかった).ので,自分でunzipした.
mkdir /home/tomcat/struts-examples/struts-example cd /home/tomcat/struts-examples/struts-example unzip ../struts-example.warこれらが終ったら,サーバを再起動.
/etc/init.d/tomcat4 restart /etc/init.d/apache restartそしてhttp://host名/struts-examples/example/ 等にアクセスすると,サンプルが表示される.

