みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

始めてのサーブレットでつまづいています。アドバイス下さい。

【参考ファイル】
http://www.hellohiro.com/servlet.htm
-----------------------------------------------------------
【ソース HelloWorldServlet.java】
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWorldServlet extends HttpServlet {
public void service(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
// ContentTypeを設定
response.setContentType("text/html; charset=Shift_JIS");
// 出力用PrintWriterを取得
PrintWriter out = response.getWriter();
// 出力
out.println("<html>");
out.println("<head>");
out.println("<title>Hello World Servlet</title>");
out.println("</head>");
out.println("<body>");
out.println("Hello World");
out.println("</body>");
out.println("</html>");
}
}
-----------------------------------------------------------
【バージョン】
[java]
C:\j2sdk1.4.2_06
[Tomcat]
C:\Program Files\Apache Software Foundation\Tomcat 5.5
-----------------------------------------------------------
【環境変数】
[CLASSPATH]
.;C:\Program Files\Java\j2re1.4.1_02\lib\ext\QTJava.zip
[Path]
C:\j2sdk1.4.2_06\bin;C:\Program Files\Apache Software Foundation\Tomcat 6.0\lib\servlet-api.jar
-----------------------------------------------------------
【エラー内容】
C:\Program Files\Apache Group\Apache2\htdocs\java\hello>javac HelloWorldServlet.
java
HelloWorldServlet.java:2: パッケージ javax.servlet は存在しません。
import javax.servlet.*;
^
HelloWorldServlet.java:3: パッケージ javax.servlet.http は存在しません。
import javax.servlet.http.*;
^
HelloWorldServlet.java:5: シンボルを解決できません。
シンボル: クラス HttpServlet
場所 : HelloWorldServlet の クラス
public class HelloWorldServlet extends HttpServlet {
^
HelloWorldServlet.java:6: シンボルを解決できません。
シンボル: クラス HttpServletRequest
場所 : HelloWorldServlet の クラス
public void service(HttpServletRequest request,
^
HelloWorldServlet.java:7: シンボルを解決できません。
シンボル: クラス HttpServletResponse
場所 : HelloWorldServlet の クラス
HttpServletResponse response)
^
HelloWorldServlet.java:8: シンボルを解決できません。
シンボル: クラス ServletException
場所 : HelloWorldServlet の クラス
throws ServletException, IOException {
^
エラー 6 個

C:\Program Files\Apache Group\Apache2\htdocs\java\hello>

投稿日時 - 2008-06-29 19:54:35

QNo.4138816

すぐに回答ほしいです

質問者が選んだベストアンサー

C:\Program Files\Apache Software Foundation\Tomcat 6.0\lib\servlet-api.jar は、

PATH ではなく、CLASSPATH に追加してください。

PATHは、実行するコマンドをさがすため、

CLASSPATH は、コンパイルするときに利用されるライブラリを指定します。

投稿日時 - 2008-06-29 20:25:07

補足

コンパイルできました。ありがとうございます。

しかし今度はtomcatで実行できません。
デフォルトのページは表示できているのですが
クラスファイルを表示するのにファイルのパスとURLをどうしていいのか調べている最中です。
web.xmlの設定を変更しなければならないのでしょうか?
なかなか簡単にはいかないので困っています。

投稿日時 - 2008-06-29 21:38:17

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

HelloWorldServlet.javaがパッケージに含まれていなければ、

HelloWorldServlet.classは、ディレクトリ /WEB-INF/classes に配備して

web.xml には、
<servlet>
<servlet-name>HelloWorldServlet</servlet-name>
<servlet-class>HelloWorldServlet</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>HelloWorldServlet</servlet-name>
<url-pattern>HelloWorldServlet</url-pattern>
</servlet-mapping>
を付け加えて、Tomcatを再起動するのが基本です。呼び出し方は、

http://localhost:8080/アプリケーション名/HelloWorldServlet

となります。

・ また、Tomcat 5.5 とTomcat 6.0 とが混用されているようですが、どちらかに統一したほうがよいでしょう。

投稿日時 - 2008-06-29 22:19:45

あなたにオススメの質問