チュートリアルを開始するにあたって、まず次のコードを調べてみます。
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWorld extends HttpServlet {
public void doGet(HttpServletRequest req, HttpServletResponse resp) 
  throws IOException, ServletException {
  resp.setContentType("text/html");
  PrintWriter out = resp.getWriter();
  out.println("<html><head><title>Hello</title></head><body>");
  out.println("Hello World");
  out.println("</body></html>");
} 
}
import javax.servlet.* と import javax.servlet.http.* の行はこれまでに見たことがないかもしれません。これらの項目は Java サーブレット API のパッケージです。これらのパッケージをインポートするのは、すべてのサーブレットがサーブレット インターフェイスを実装する必要があるためです。詳細については、"サーブレット API のパッケージ," in Chapter 19 を参照してください。
HelloWorld プログラムは HttpServlet クラスを継承します。HTTP を使用して Web ブラウザと通信するサーブレットのためにこのクラスを継承します。HttpServlet は GenericServlet クラスを継承しますが、このクラスはあまり使用しません。GenericServlet と HttpServlet の詳細については、227 ページの第 20 章「Java サーブレット API によるプログラミング」 を参照してください。doGet() メソッドの最初のパラメータは HttpServletRequest オブジェクトです。このオブジェクトは、サーブレットがクライアント要求を読み込むことができるように入力ストリームを提供します。このサービス メソッドの 2 番目のパラメータは、HttpServletResponse オブジェクトです。このオブジェクトは、サーブレットがクライアントに返す応答を作成できるように出力ストリームを供給します。詳細については、"HTTP 要求と応答"を参照してください。setContentType() メソッドはサーブレットの出力の MIME タイプを text/html に設定します。既定では、Java サーブレットの出力 MIME タイプは text/html です。 getWriter() メソッドは PrintWriter オブジェクトを返します。このオブジェクトは、サーブレットがブラウザにテキストを返すことができるようにします。out.println() 行では、HTML 形式を使用することと、文字列「Hello World」を含むテキストをブラウザに送信することを指定します。
   これから、HelloWorld.java という名前の Java ソース ファイルを作成して、上のコードをこのファイルにコピーします。次に、サーブレット クラス ファイルを作成するために Java コードをコンパイルします。
次のコマンドを使用して HelloWorld.java をコンパイルします。
javac -classpath c:¥jruninstalldirectory¥lib¥ext¥servlet.jar HelloWorld.java
   このコマンドは Java サーブレット API からのパッケージをインクルードするための classpath を指定します。この例では、これらのファイルが Microsoft Windows システムの既定の位置にインストールされていることを想定しています。
   コードのコンパイルが完了したら、サーバーが HelloWorld.class ファイルにアクセスできるように、このファイルを適切なディレクトリにコピーします。既定ではこのディレクトリは JRun のインストール ディレクトリ/servers/default/default-app/WEB-INF/classes です。異なるサーバーを使用する場合は、ファイルを適当なディレクトリにコピーしてください。
サーバー名が myhost であれば、次の URL を使用してこのサーブレットを呼び出します。
http://localhost/servlet/HelloWorld
JRun URL とファイルの場所の詳細については、70 ページの「Web アプリケーションの開発」を参照してください。
| メモ サーバーがポート 80 以外のポートで動作している場合、URL にそのポート番号を含 める必要があります。 |