Windows2000で簡単シリーズ Tomcat で サーブレット

更新日 2004/2/22

1. はじめに
  このホームページは、
2. 準備
3. 
9. 
2. 準備(インストール)  ↑top

  1. 最初に、JDKをインストールしておくことをお勧めします。Tomcatはインストール時にJDKを検出して、環境変数などを自動設定してく れるようなので、作業がいくらか楽になります。

  2. まずは、Tomcapをダウンロードしましょう。こ こ にあります。現状の最新版は、Tomcat 5.0.18というものです。Jakarta のページBinariesの 下のほう(ABC順)にあります。ファイル名は、jakarta-tomcat-5.0.18.exeで、ダブルクリックして置き場所などを入力すればイ ンストールは完了します。置き場所は、C:\ 直下にしてみましたが、C:\Tomcat 5.0の配下に展開されます。 

  3. 環境変数の設定
    以前は、JAVA_HOMEやTOMCAT_HOMEなどを自分で設定していたような気がしますが、上記のインストーラでは必要ないようです。

  4. 動作確認
     ブラウザから、http://localhost:8080/ と入力して、Webサーバとして動作していることを確認します。サーブレット が動いているわけではありませんが、これが表示されれば、うまくインストールされているはずです。まずは、おめでとうございます。

3.  Apache2のインストール  ↑top

  前節の動作確認でも分かるように、TomcatはWebサーバの機能も持ち合わせています。しかし、通常はApacheと連携させるのが一般的のようで す。というわけで、Apache2をインストールしますが、ここ を参照してください。Apache2も、C:\ 直下にインストールしました。

4. Apache2との連携  ↑top

  1. Apache2との連携には、mod_jk2.dll が必要ですので、これをダウンロードしてきます。こ こ にあります。このmod_jk2.dll を C:\Apache2\modules 配下に入れてください。(C:\Apache2は、Apache2のインストール位置によって異なります)
    jjakarta-tomcat-connectors-jk2.0.2-win32-apache2.0.43.zip で直接ダウンロードできます。

    ダウンロード 
     3.3.1のものです。ごめんなさい。


  2. C:\Apache2/conf/httpd.conf ファイルの170行目あたりに以下を追加
    LoadModule jk2_module modules/mod_jk2-2.0.43.dll

  3. workers2.propertiesファイルに以下の内容を書いて、C:\Apache2/conf/に置く。

    # Define the communication channel
    [channel.socket:localhost:8009]
    info=Ajp13 forwarding over socket
    tomcatId=localhost:8009
    # Map the Tomcat examples webapp to the Web server uri space
    [uri:/jsp-examples/*]
    [uri:/servlets-examples/*]
    info=Map the whole webapp
    # Shared memory
    [shm]
    disabled=1
    # file=/usr/local/apache/logs/shm.file
    # size=1048576


  4. tomcat\conf\server.xml の編集
    TomcatのWebサーバ機能を停止します。Webサーバ機能は、Apacheに任せます。

    【変更前】
     <Http10Connector   port="8080"
        secure="false"
        maxThreads="100"
        maxSpareThreads="50"
        minSpareThreads="10" />


    【変更後】コメントアウトしてるわけです。
     <!-- Http10Connector   port="8080"
        secure="false"
        maxThreads="100"
        maxSpareThreads="50"
        minSpareThreads="10" /-->


  5. 動作確認
    Tomcat Apacheの順で起動し、ブラウザにて以下を入力。以下の画面が出れば、ApcheとTomcatの連携がうまくいっていることになります。
    http://localhost/examples/servlets/index.html

    apache tomcat の連携


4. Windowsサービス化  ↑top

以前は、設定によって実現していたようですが、Tomcat5では上記のインストールで自動的にサービスに設定されます。Windows起動時に立ち上げ たいのであれば、サービスの設定を手動から自動に変更すればOKです。 

5.  デモで字化け ↑top

以下は 3.3.1の話で、5.0.18では分かりません。

いきなりデモ(HelloWorldExample)が???????!で始まるとがっくりです。

HelloWorldExample.javaを一部修正すると直ります。

【リスト HelloWorldExample.java】

public class HelloWorldExample extends HttpServlet {

    public void doGet(HttpServletRequest request,
                      HttpServletResponse response)
        throws IOException, ServletException
    {
        ResourceBundle rb =
            ResourceBundle.getBundle("LocalStrings",request.getLocale());
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();

【修正後】シフトJISに設定してやります。
        response.setContentType("text/html; charset=Shift_JIS");

コンパイルします。
j2jdk1.4.0\binのパス設定
TOMCAT_HOME\bin\Env.batの実行

setEnvの実行


javac HelloWorldExample.java でOKです。

サーブレットなので、サーバ起動中でもコンパイルすれば反映されます。
 
 

9. 参考文献  ↑top

  役に立つと思われる書籍を紹介しています。本文からも参照できるようにしていきますが、一覧は こちら でまとめています。


[HOME] / [Perl] / [Oracle8]   / [Palm(GCC)][Palm(CodeWarrior)] / [EJB] / [本の紹 介]

このページにご意見のある方は、egami@ee.e-mansion.com までお願い致します。