apache_tomcat

「apache_tomcat」の編集履歴(バックアップ)一覧はこちら

apache_tomcat」(2009/02/21 (土) 01:52:09) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

*&bold(){バージョン} -apache 2.2.11(nossl) -Tomcat 5.5.27 -JDK 6 update 12 -eclipse java ganymede SR1 &italic(){以下、[[こちら>http://www.javadrive.jp/servlet/index.html]]のサイトを参考にさせていただきました。} *&bold(){JDKインストール} &bold(){JDKインストール場所} -C:\Program Files\Java\jdk1.6.0_12 &bold(){JREインストール場所} -C:\Program Files\Java\jre6 *&bold(){JDKインストール後設定} &bold(){PATHの追加} -PATH=(既存の設定);C:\Program Files\Java\jdk1.6.0_12\bin &bold(){JAVA_HOMEの設定} -JAVA_HOME=C:\Program Files\Java\jdk1.6.0_12 *&bold(){Tomcatインストール} &bold(){Choose Components} -Normal &bold(){Choose Install Location} -C:\Program Files\Apache Software Foundation\Tomcat 5.5 &bold(){Java Virtual Machine} -C:\Program Files\Java\jdk1.6.0_12 *&bold(){Tomcatインストール後設定} &bold(){動作確認} -http://localhost:8080/ にアクセスし、表示されることを確認する。 &bold(){CATALINA_HOMEの設定} -CATALINA_HOME=C:\Program Files\Apache Software Foundation\Tomcat 5.5 &bold(){サーブレットアプリケーションのコンパイル} -javac -classpath "%CATALINA_HOME%\lib\servlet-api.jar" HelloWorld.java  ※PATH変数、CATALINA_HOME変数が定義してあること。 *&bold(){アプリケーションの作成と配置} &bold(){アプリケーションの構成} -ディレクトリの作成  ルートディレクトリ c:\servlet-sample\helloworld\   c:\servlet-sample\helloworld\img                    \WEB-INF                    \WEB-INF\classes -HTMLファイル作成  ファイル名 (c:\servlet-sample\helloworld\)index.html <html> <head><title>HelloWorld</title></head> <body> <br> <img src="./img/p1.png"> <a href="/hello/helloworld">クリックして下さい</a> <br> </body> </html> -画像ファイル作成  ファイル名 (c:\servlet-sample\helloworld\img\p1.png) -classファイルの作成、配置  ファイル名 (c:\)HelloWorld.java import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class HelloWorld extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException{ response.setContentType("text/html"); PrintWriter out = response.getWriter(); out.println("<html>"); out.println("<head>"); out.println("<title>Hello World!</title>"); out.println("</head>"); out.println("<body>"); out.println("<h1>Hello World!</h1>"); out.println("</body>"); out.println("</html>"); } } で、コンパイルする。 javac -classpath "%CATALINA_HOME%\common\lib\servlet-api.jar" HelloWorld.java で、できあがったHelloWorld.classをc:\servlet-sample\helloworld\WEB-INF\classesに格納する。 &bold(){コンテキストの設定} -コンテキストの設定ファイルの作成  ファイル名 (%CATALINA_HOME%\conf\Catalina\localhost\)hello.xml <Context path="/hello" docBase="c:/servlet-sample/helloworld"/> ※docBase ルートディレクトリ ※path http://localhost:8080/hello/index.html                    ^^^^^ 作成後、Tomcatを再起動する。 -HTMLの表示テスト  http://localhost:8080/hello/index.html にアクセスし、表示されることを確認する。 -Tomcat Managerでの確認  http://localhost:8080/ にアクセスし、画面左上段の「Tomcat Manager」をクリックする。  ログイン後、「アプリケーション」カテゴリの一覧に今回追加したコンテキスト(/hello)があることを確認する。 &bold(){web.xmlの記述} -web.xmlを作成する  ファイル名 (c:\servlet-sample\helloworld\WEB-INF\)web.xml <?xml version="1.0" encoding="ISO-8859-1"?> <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4"> <servlet> <servlet-name>helloworld</servlet-name> <servlet-class>HelloWorld</servlet-class> </servlet> <servlet-mapping> <servlet-name>helloworld</servlet-name> <url-pattern>/helloworld</url-pattern> </servlet-mapping> </web-app> ※1~6行目までは、%CATALINA_HOME%\conf\web.xmlを参考にする。 -http://localhost:8080/hello/helloworld にアクセスし、「HelloWorld」と表示されることを確認する。 *&bold(){サーブレットの基本} &bold(){基本パッケージ} -javax.servletパッケージ インターフェース Filter FilterChain FilterConfig RequestDispatcher Servlet ServletConfig ServletContext ServletContextAttributeListener ServletContextListener ServletRequest ServletRequestAttributeListener ServletRequestListener ServletResponse SingleThreadModel クラス GenericServlet ServletContextAttributeEvent ServletContextEvent ServletInputStream ServletOutputStream ServletRequestAttributeEvent ServletRequestEvent ServletRequestWrapper ServletResponseWrapper Exceptions ServletException UnavailableException -javax.servlet.httpパッケージ インターフェース HttpServletRequest HttpServletResponse HttpSession HttpSessionActivationListener HttpSessionAttributeListener HttpSessionBindingListener HttpSessionContext HttpSessionListener クラス Cookie HttpServlet HttpServletRequestWrapper HttpServletResponseWrapper HttpSessionBindingEvent HttpSessionEvent HttpUtil &bold(){HttpServletクラスとメソッド} -HttpServletクラスのメソッド |HTTPメソッド|メソッド| |GET|protected void doGet(HttpServletRequest req, HttpServletResponse resp)| |POST|protected void doPost(HttpServletRequest req, HttpServletResponse resp)| |PUT|protected void doPut(HttpServletRequest req, HttpServletResponse resp)| |DELETE|protected void doDelete(HttpServletRequest req, HttpServletResponse resp)| |HEAD|protected void doHead(HttpServletRequest req, HttpServletResponse resp)| |TRACE|protected void doTrace(HttpServletRequest req, HttpServletResponse resp)| |OPTIONS|protected void doOptions(HttpServletRequest req, HttpServletResponse resp)| &bold(){サーブレットの基本形} -HttpServletクラスの継承 public class HelloWorld extends HttpServlet{ ・・・・ } -HTTPメソッドに対応したメソッドの実装 public class HelloWorld extends HttpServlet{ public void doGet}(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException{ ・・・・ } public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException{ ・・・・ } } ※doGet()、doPost()どちらかでも良い。 &bold(){doGetメソッドとdoPostメソッド} -&italic(){[[こちら>http://www.javadrive.jp/servlet/ini/index4.html]]を参照} |URL|http://localhost:8080/sample/Sample1| |アプリケーション配置場所|c:\servlet-sample\sample\| |web.xmlファイル|c:\servlet-sample\sample\WEB-INF\web.xml| |コンテキストファイル|C:\Program Files\Apache Software Foundation\Tomcat 5.5\conf\Catalina\localhost\sample.xml| &bold(){サーブレットのライフサイクルとインスタンス変数} -インスタンス変数を用いたサンプル import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class Sample extends HttpServlet { int count = 0; // ←メソッド外に書かれた変数が「インスタンス変数」 public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException{ int local_count = 0; } } この変数は全てのスレッドで共有して利用される変数ですので、同じ変数に対して別々のスレッドがそれぞれ参照したり値を変更したりする事が出来ます。 -インスタンス変数の簡単なサンプル &italic(){[[こちら>http://www.javadrive.jp/servlet/ini/index5.html]]を参照} |URL|http://localhost:8080/sample/Sample2| |アプリケーション配置場所|c:\servlet-sample\sample\| |web.xmlファイル|c:\servlet-sample\sample\WEB-INF\web.xml| |コンテキストファイル|C:\Program Files\Apache Software Foundation\Tomcat 5.5\conf\Catalina\localhost\sample.xml| &bold(){initメソッドとdestroyメソッド} -initメソッド import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class Sample extends HttpServlet { public void init() throws ServletException{ // ←initメソッド /* 初期化処理 */ } public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException{ /* ・・・・ */ } } initメソッドはインスタンス作成後に一度だけ呼ばれるメソッドですので、インスタンス変数の初期化などに利用します。 -destroyメソッド import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class Sample extends HttpServlet { public void init() throws ServletException{ /* 初期化処理 */ } public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException{ /* ・・・・ */ } public void destroy(){ // ←destroyメソッド /* 終了処理 */ } } -initメソッド、destroyメソッドの簡単なサンプル &italic(){[[こちら>http://www.javadrive.jp/servlet/ini/index6.html]]を参照} |URL|http://localhost:8080/sample/Sample3| |アプリケーション配置場所|c:\servlet-sample\sample\| |web.xmlファイル|c:\servlet-sample\sample\WEB-INF\web.xml| |コンテキストファイル|C:\Program Files\Apache Software Foundation\Tomcat 5.5\conf\Catalina\localhost\sample.xml| |ログファイル|C:\Program Files\Apache Software Foundation\Tomcat 5.5\logs\localhost.[YYYY-MM-DD].log| *&bold(){クライアントへの出力(HttpServletResponse)} &bold(){HttpServletResponseインターフェース} &italic(){[[こちら>http://www.javadrive.jp/servlet/response/index1.html]]を参照} &bold(){コンテンツタイプの設定(setContentType)} |種類|拡張子|Content-Type| |HTMLファイル|html, htm|text/html| |テキストファイル|txt|text/plain| |GIF|gif|image/gif| |PNG|png|image/png| |Windows 実行ファイル|exe|application/octet-stream| response.setContentType("text/html"); ※文字コードを指定する場合 response.setContentType("text/html;charset=Shift_JIS"); 文字コードを設定しなかった場合には次のページで説明する通りデータ本文が「ISO-8859-1(Latin1)」でエンコードされます。その為、日本語を扱うデータの場合は文字化けしてしまいますので注意して下さい。 -文字セットの指定(setCharacterEncodingメソッド) response.setContentType("text/html"); response.setCharacterEncoding("Shift_JIS"); 上記は、「response.setContentType("text/html;charset=Shift_JIS");」と同じ |URL(文字セット無し)|http://localhost:8080/sample/ResponseSample1| |  (文字セットあり)|http://localhost:8080/sample/ResponseSample2| |アプリケーション配置場所|c:\servlet-sample\sample\| |web.xmlファイル|c:\servlet-sample\sample\WEB-INF\web.xml| |コンテキストファイル|C:\Program Files\Apache Software Foundation\Tomcat 5.5\conf\Catalina\localhost\sample.xml| &bold(){文字出力用のストリームの取得(getWriter)} &italic(){次回はここから http://www.javadrive.jp/servlet/response/index3.html}
*&bold(){バージョン} -apache 2.2.11(nossl) -Tomcat 5.5.27 -JDK 6 update 12 -eclipse java ganymede SR1 &italic(){以下、[[こちら>http://www.javadrive.jp/servlet/index.html]]のサイトを参考にさせていただきました。} *&bold(){JDKインストール} &bold(){JDKインストール場所} -C:\Program Files\Java\jdk1.6.0_12 &bold(){JREインストール場所} -C:\Program Files\Java\jre6 *&bold(){JDKインストール後設定} &bold(){PATHの追加} -PATH=(既存の設定);C:\Program Files\Java\jdk1.6.0_12\bin &bold(){JAVA_HOMEの設定} -JAVA_HOME=C:\Program Files\Java\jdk1.6.0_12 *&bold(){Tomcatインストール} &bold(){Choose Components} -Normal &bold(){Choose Install Location} -C:\Program Files\Apache Software Foundation\Tomcat 5.5 &bold(){Java Virtual Machine} -C:\Program Files\Java\jdk1.6.0_12 *&bold(){Tomcatインストール後設定} &bold(){動作確認} -http://localhost:8080/ にアクセスし、表示されることを確認する。 &bold(){CATALINA_HOMEの設定} -CATALINA_HOME=C:\Program Files\Apache Software Foundation\Tomcat 5.5 &bold(){サーブレットアプリケーションのコンパイル} -javac -classpath "%CATALINA_HOME%\lib\servlet-api.jar" HelloWorld.java  ※PATH変数、CATALINA_HOME変数が定義してあること。 *&bold(){アプリケーションの作成と配置} &bold(){アプリケーションの構成} -ディレクトリの作成  ルートディレクトリ c:\servlet-sample\helloworld\   c:\servlet-sample\helloworld\img                    \WEB-INF                    \WEB-INF\classes -HTMLファイル作成  ファイル名 (c:\servlet-sample\helloworld\)index.html <html> <head><title>HelloWorld</title></head> <body> <br> <img src="./img/p1.png"> <a href="/hello/helloworld">クリックして下さい</a> <br> </body> </html> -画像ファイル作成  ファイル名 (c:\servlet-sample\helloworld\img\p1.png) -classファイルの作成、配置  ファイル名 (c:\)HelloWorld.java import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class HelloWorld extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException{ response.setContentType("text/html"); PrintWriter out = response.getWriter(); out.println("<html>"); out.println("<head>"); out.println("<title>Hello World!</title>"); out.println("</head>"); out.println("<body>"); out.println("<h1>Hello World!</h1>"); out.println("</body>"); out.println("</html>"); } } で、コンパイルする。 javac -classpath "%CATALINA_HOME%\common\lib\servlet-api.jar" HelloWorld.java で、できあがったHelloWorld.classをc:\servlet-sample\helloworld\WEB-INF\classesに格納する。 &bold(){コンテキストの設定} -コンテキストの設定ファイルの作成  ファイル名 (%CATALINA_HOME%\conf\Catalina\localhost\)hello.xml <Context path="/hello" docBase="c:/servlet-sample/helloworld"/> ※docBase ルートディレクトリ ※path http://localhost:8080/hello/index.html                    ^^^^^ 作成後、Tomcatを再起動する。 -HTMLの表示テスト  http://localhost:8080/hello/index.html にアクセスし、表示されることを確認する。 -Tomcat Managerでの確認  http://localhost:8080/ にアクセスし、画面左上段の「Tomcat Manager」をクリックする。  ログイン後、「アプリケーション」カテゴリの一覧に今回追加したコンテキスト(/hello)があることを確認する。 &bold(){web.xmlの記述} -web.xmlを作成する  ファイル名 (c:\servlet-sample\helloworld\WEB-INF\)web.xml <?xml version="1.0" encoding="ISO-8859-1"?> <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4"> <servlet> <servlet-name>helloworld</servlet-name> <servlet-class>HelloWorld</servlet-class> </servlet> <servlet-mapping> <servlet-name>helloworld</servlet-name> <url-pattern>/helloworld</url-pattern> </servlet-mapping> </web-app> ※1~6行目までは、%CATALINA_HOME%\conf\web.xmlを参考にする。 -http://localhost:8080/hello/helloworld にアクセスし、「HelloWorld」と表示されることを確認する。 *&bold(){サーブレットの基本} &bold(){基本パッケージ} -javax.servletパッケージ インターフェース Filter FilterChain FilterConfig RequestDispatcher Servlet ServletConfig ServletContext ServletContextAttributeListener ServletContextListener ServletRequest ServletRequestAttributeListener ServletRequestListener ServletResponse SingleThreadModel クラス GenericServlet ServletContextAttributeEvent ServletContextEvent ServletInputStream ServletOutputStream ServletRequestAttributeEvent ServletRequestEvent ServletRequestWrapper ServletResponseWrapper Exceptions ServletException UnavailableException -javax.servlet.httpパッケージ インターフェース HttpServletRequest HttpServletResponse HttpSession HttpSessionActivationListener HttpSessionAttributeListener HttpSessionBindingListener HttpSessionContext HttpSessionListener クラス Cookie HttpServlet HttpServletRequestWrapper HttpServletResponseWrapper HttpSessionBindingEvent HttpSessionEvent HttpUtil &bold(){HttpServletクラスとメソッド} -HttpServletクラスのメソッド |HTTPメソッド|メソッド| |GET|protected void doGet(HttpServletRequest req, HttpServletResponse resp)| |POST|protected void doPost(HttpServletRequest req, HttpServletResponse resp)| |PUT|protected void doPut(HttpServletRequest req, HttpServletResponse resp)| |DELETE|protected void doDelete(HttpServletRequest req, HttpServletResponse resp)| |HEAD|protected void doHead(HttpServletRequest req, HttpServletResponse resp)| |TRACE|protected void doTrace(HttpServletRequest req, HttpServletResponse resp)| |OPTIONS|protected void doOptions(HttpServletRequest req, HttpServletResponse resp)| &bold(){サーブレットの基本形} -HttpServletクラスの継承 public class HelloWorld extends HttpServlet{ ・・・・ } -HTTPメソッドに対応したメソッドの実装 public class HelloWorld extends HttpServlet{ public void doGet}(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException{ ・・・・ } public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException{ ・・・・ } } ※doGet()、doPost()どちらかでも良い。 &bold(){doGetメソッドとdoPostメソッド} -&italic(){[[こちら>http://www.javadrive.jp/servlet/ini/index4.html]]を参照} |URL|http://localhost:8080/sample/Sample1| |アプリケーション配置場所|c:\servlet-sample\sample\| |web.xmlファイル|c:\servlet-sample\sample\WEB-INF\web.xml| |コンテキストファイル|C:\Program Files\Apache Software Foundation\Tomcat 5.5\conf\Catalina\localhost\sample.xml| &bold(){サーブレットのライフサイクルとインスタンス変数} -インスタンス変数を用いたサンプル import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class Sample extends HttpServlet { int count = 0; // ←メソッド外に書かれた変数が「インスタンス変数」 public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException{ int local_count = 0; } } この変数は全てのスレッドで共有して利用される変数ですので、同じ変数に対して別々のスレッドがそれぞれ参照したり値を変更したりする事が出来ます。 -インスタンス変数の簡単なサンプル &italic(){[[こちら>http://www.javadrive.jp/servlet/ini/index5.html]]を参照} |URL|http://localhost:8080/sample/Sample2| |アプリケーション配置場所|c:\servlet-sample\sample\| |web.xmlファイル|c:\servlet-sample\sample\WEB-INF\web.xml| |コンテキストファイル|C:\Program Files\Apache Software Foundation\Tomcat 5.5\conf\Catalina\localhost\sample.xml| &bold(){initメソッドとdestroyメソッド} -initメソッド import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class Sample extends HttpServlet { public void init() throws ServletException{ // ←initメソッド /* 初期化処理 */ } public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException{ /* ・・・・ */ } } initメソッドはインスタンス作成後に一度だけ呼ばれるメソッドですので、インスタンス変数の初期化などに利用します。 -destroyメソッド import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class Sample extends HttpServlet { public void init() throws ServletException{ /* 初期化処理 */ } public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException{ /* ・・・・ */ } public void destroy(){ // ←destroyメソッド /* 終了処理 */ } } -initメソッド、destroyメソッドの簡単なサンプル &italic(){[[こちら>http://www.javadrive.jp/servlet/ini/index6.html]]を参照} |URL|http://localhost:8080/sample/Sample3| |アプリケーション配置場所|c:\servlet-sample\sample\| |web.xmlファイル|c:\servlet-sample\sample\WEB-INF\web.xml| |コンテキストファイル|C:\Program Files\Apache Software Foundation\Tomcat 5.5\conf\Catalina\localhost\sample.xml| |ログファイル|C:\Program Files\Apache Software Foundation\Tomcat 5.5\logs\localhost.[YYYY-MM-DD].log|

表示オプション

横に並べて表示:
変化行の前後のみ表示: