|
|
|
|
|
|
|
TOMCATでの新規アプリケーションの作成(簡易版) |
|
|
Tomcatで自分のアプリケーション
を作成する場合は、$TOMCAT_HOME/webapps/以下に作成するのが通例のようです。
(もちろん、まったく任意の場所に作成することも可能です。)
少々面倒な作業が必要になりますので、具体的な例で作成していきます。
今回は、testアプリケーションを作成します。
このtestアプリケーションには、Hello.jspと、Hello.classというServletを作成します。
具体的には、以下の構成になります。(最低限の環境)
$TOMCAT_HOME/webapps/test/
|--Hello.jsp
|--WEB-INF/
|-----classes/
| |----Hello.class
|------web.xml |
| 1.アプリケーションの配置ディレクトリの作成と
web.xmlの作成 |
ディレクトリの作成
#cd
$TOMCAT_HOME/webapps
#mkdir test
#mkdir -p test/WEB-INF
#mkdir -p test/WEB-INF/classes
web.xmlファイルの作成
test/WEB-INF/web.xmlを
以下の内容で作成します。
<?xml
version="1.0"
encoding="ISO-8859-1"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems,
Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/j2ee/dtds/web-app_2_3.dtd">
<web-app>
</web-app> |
Hello.jspは、$
TOMCAT_HOME/webapps/test/に配置します。
Hello.classは、$
TOMCAT_HOME/webapps/test/WEB-INF/classes/に配置します。
#cp Hello.jsp
$TOMCAT_HOME/webapps/test/
#cp Hello.class
$TOMCAT_HOME/webapps/test/WEB-INF/classes/
JSPやServletにアクセスするに
は、$TOMCAT_HOME/conf/server.xmlへContextを追加する必要があります。
examplesの</Context>の下にでも追加してください。
<Context
path="/test" docBase="test" debug="0" reloadable="true"
crossContext="true">
</Context> |
ブラウザから、http://localhost:8080/test/Hello.jspで
アクセスできます。
本来、Servletにアクセスする場合は、web.xmlに<servlet
mapping>を設定することが望ましいのですが、今回は簡易アクセスを試してみます。
*Tomcat-4.0系
ブラウザへhttp://localhost:8080/test/servlet/Helloと
するとServletへアクセスできます。
*Tomcat-4.1系
4.1系は、簡易アクセスが無効にされています(本来こうあるべきですが)
簡易アクセスを有効にする場合は、以下を修正します。
$TOMCAT_HOME/conf/web.xmlの以下がコメントを外し有効にします。
<servlet-mapping>
<servlet-name>invoker</servlet-name>
<url-pattern>/servlet/*</url-pattern>
</servlet-mapping> |
修正したら、Tomcatを再起動し、以下のようにするとアクセスできます。
ブラウザへhttp://localhost:8080/test/servlet/Hello
| 6.mod_jkへ設定し、Apache経由でアクセスで
きるようにする。 |
$APACHE_HOME/conf/mod_jk.conf
へ"test"追加します。
LoadModule
jk_module libexec/mod_jk.so
<IfModule mod_jk.c>
JkWorkersFile /usr/local/apache/conf/workers.properties
JkLogFile logs/mod_jk.log
JkLogLevel warn
JkMount /*.jsp worker1
JkMount /servlet/* worker1
JkMount /examples/* worker1
JkMount /test/* worker1 <---------これを追
加
</IfModule> |
これで、Apache経由で(Port80で)接続できます。
Servletの動作確認-----http://localhost/servlet/Hello
JSPの動作確認-------http://localhost/test/Hello.jsp
| 7.mod_jk2に設定し、Apache経由でアクセス
できるようにする。 |
$APACHE_HOME/conf/workers2.propertiesへ"test""を追加します。
[status:]
[uri:/jkstatus/*]
group=status:
[shm:]
disabled=1
[channel.socket:]
[ajp13:]
[uri:/examples/*]
[uri:/test/*]
<---------これを追加 |
これで、Apache経由で(Port80で)接続できます。
Servletの動作確認-----http://localhost/servlet/Hello
JSPの動作確認-------http://localhost/test/Hello.jsp
これで、最低限のアプリケーション開発が可能になりますが、Tomcatはさまざまな設定が可能です。
そのためには、server.xmlとweb.xmlの編集が肝になります。
この2つのファイルを編集することにより、Tomcatの振舞は細かく設定できますし、セキュリティーを高めることも可能です。
この2つについては、別途、server.xmlの設定によるTomcatの制御や、web.xmlの設定によるTomcatの制御で取り上げます。
*Tomcat使用上の注意点
今回、Tomcat-4.1でServletへの簡易アクセスを有効にしていますが、これは本来(運用では)止めておくべき物です。
ただし、簡易アクセスを止めると、web.xmlの編集が必項になります。
また、mod_jkやmod_jk2を使用する場合は、port:8080での接続も止めておくべきです。
port:8080はTomcat付属の簡易WEBサーバですから、運用ではmod_jkなどを使用しApacheと連係させることはほぼ必項でしょう。
このあたりも、server.xmlやweb.xmlで制御します。
|
|
|
|
|
|
|
Producted by Tomoya Sakurai
|
|
|