Eclipseは機能が豊富なので、 場合によっては動作が不安定になったりすることもあるようです。 そこでこのページではEclipseを使用せずに Servletを作成・設置する方法をまとめます。
javac -classpath ".;C:\jetty-6.1.25\lib\servlet-api-2.5-20081211.jar" HelloServlet.javaというコマンドでコンパイルするか、
set CLASSPATH=".;C:\jetty-6.1.25\lib\servlet-api-2.5-20081211.jar;"というコマンドをコマンドプロンプトを開いて最初に実行し、以降は普通に
javac HelloServlet.javaというコマンドでコンパイルして下さい。
HelloServlet.javaの部分は適宜入れ替えて下さい。
Jettyを C:\jetty-6.1.25以外のフォルダにインストールした場合は、 そのフォルダのパスにあわせて下さい。
2.5-20081211の部分は、バージョン番号なので Jettyのバージョンによって異なる可能性があります。
プロジェクトは「動的Webプロジェクト」ではなく、通常の 「Javaプロジェクト」として作成します。(Eclipseの使い方(Javaアプリケーション編)の 「Javaプロジェクトの作成」を参照して下さい)
ウインドウ左側の「パッケージ・エクスプローラー」で作成した、 パッケージ名を選択して、右クリックし、 一番下の「プロパティー」をクリックします。
現われるウインドウで「Javaのビルド・パス」をクリックし、 「ライブラリー」タブを選択して、「外部 JARの追加」ボタンを押します。
「JARの選択」というダイアログが現われるので、 C:\jetty-6.1.25\lib\ フォルダに移動して、servlet-api.2.5-20081211.jarを選択します。 「OK」ボタンを押します。
以降は普通にJavaのソースファイルを作成します。 「保管」すると同時に .classファイルができます。
以下の例では HelloServletという名前のサーブレットを設置するとします。
C:\jetty-6.1.25\webapps\ に適当なフォルダ(以下の例ではInfoEnvExp2)を作成します。 このフォルダをアプリケーションルートフォルダ と呼びます。 アプリケーションルートフォルダの下に、さらにWEB-INFというフォルダを作成し、 その下にclassesというフォルダを作成します。
classesフォルダの下にHelloServlet.classファイルを コピーし、さらにWEB-INFフォルダの下に以下のような内容の web.xmlというファイルを置きます。 (メモ帳などのエディタで作成すれば良いですが、Vistaの場合、管理者権限で実行する必要があります。)
<?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>HelloServlet</servlet-name> <servlet-class>HelloServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>HelloServlet</servlet-name> <url-pattern>/HelloServlet</url-pattern> </servlet-mapping> </web-app>
<servlet>〜</servlet>、 <servlet-mapping>〜</servlet-mapping>は、 必要に応じて追加します。
<?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>HelloServlet</servlet-name> <servlet-class>HelloServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>HelloServlet</servlet-name> <url-pattern>/HelloServlet</url-pattern> </servlet-mapping> <servlet> <servlet-name>MyDate</servlet-name> <servlet-class>MyDate</servlet-class> </servlet> <servlet-mapping> <servlet-name>MyDate</servlet-name> <url-pattern>/MyDate</url-pattern> </servlet-mapping> </web-app>
Jettyをインストールしたディレクトリ(C:\jetty-6.1.25\)で次をタイプします。
java -jar start.jar etc/jetty.xml
http://localhost:8080/InfoEnvExp2/HelloServletで作成したサーブレットを見ることができます。