
サーブレットを始めようとして、「10日でおぼえるJSP/サーブレット入門教室」を使って勉強しようとしているのですが、最初のファイルをコンパイルしようとしたら下記のようなエラーが出てコンパイルできませんでした。
SrvIntro.java:6: パッケージ javax.servlet は存在しません。
import javax.servlet.ServletException;
^
SrvIntro.java:7: パッケージ javax.servlet.http は存在しません。
import javax.servlet.http.HttpServlet;
^
SrvIntro.java:8: パッケージ javax.servlet.http は存在しません。
import javax.servlet.http.HttpServletRequest;
^
SrvIntro.java:9: パッケージ javax.servlet.http は存在しません。
import javax.servlet.http.HttpServletResponse;
^
SrvIntro.java:11: シンボルを解決できません。
シンボル: クラス HttpServlet
場所 : day07.SrvIntro の クラス
public class SrvIntro extends HttpServlet{
^
SrvIntro.java:12: シンボルを解決できません。
シンボル: クラス HttpServletRequest
場所 : day07.SrvIntro の クラス
public void doGet(HttpServletRequest request, HttpServletResponse respon
se)
^
SrvIntro.java:12: シンボルを解決できません。
シンボル: クラス HttpServletResponse
場所 : day07.SrvIntro の クラス
public void doGet(HttpServletRequest request, HttpServletResponse respon
se)
^
SrvIntro.java:13: シンボルを解決できません。
シンボル: クラス ServletException
場所 : day07.SrvIntro の クラス
throws ServletException, IOException{
^
エラー 8 個
調べた感じだとクラスパスの設定が間違っている可能性大ということらしいのですが、何度確かめてもクラスパスは合ってると思うのです・・
何かこれじゃないか?という原因に心当たりがあればよろしくお願いします。
No.3ベストアンサー
- 回答日時:
classpathを通してください。
またはコマンドプロンプトで下記のように。(Tomcat5.0の例)
>SET CLASSPATH=C:\Program Files\Apache Software Foundation\Tomcat 5.0\common\lib\servlet-api.jar;.
この場合は起動するたびに毎回行います。
環境変数で設定すればcommand.batファイルに書き込まれる
訳ですね。
No.2
- 回答日時:
>また、関係あるのかな?と思って「servlet-api.jar」をエディタで開いてみたら文字化けだらけだったのですが、それは関係ないでしょうか?こういうファイルはエディタで見ると文字化けしているのが普通なのでしょうか?
(直接質問の回答ではありませんが…)
普通です。(というか文字化けではありません。)
~.jarはクラスファイルをzip形式で圧縮したものです。
中身はバイナリなので、エディタで開いて見ても、(おそらく大多数の)人が表示された内容を理解することはできません。
No.1
- 回答日時:
コマンドプロンプトから、指定した環境変数のクラスパスを入力して
ちゃんとアクセス出来ているか確認してみて下さい。
CATALINA_HOMEに「C:\Program Files\Apache Software Foundation\Tomcat 5.5」、
CLASS_PATHに「%CATALINA_HOME\webapps\hoge」とあるならば、
コマンドプロンプトで「explorer "%CATALINA_HOME%\webapps\hoge\"」とし、
正しければエクスプローラーでそのディレクトリが表示されます。
ファイルを指定したならば、そのファイル拡張子によって設定されている挙動を起こします。
見れていないから、そんなパッケージなんてねーよと言われています。
回答ありがとうございます。
アクセスはちゃんとできました。
ネットで続いて調べていたのですが普通は「servlet.jar」というファイルにパスを通すみたいなのですが、この本では「servlet-api.jar」というファイル(servlet.jarというファイルはTomcatのフォルダに入っていなかった)にパスを通しているのですが、それは関係あると思いますか?それとも単に名前が違うだけでしょうか?
また、関係あるのかな?と思って「servlet-api.jar」をエディタで開いてみたら文字化けだらけだったのですが、それは関係ないでしょうか?こういうファイルはエディタで見ると文字化けしているのが普通なのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java java 入力 3 4 3 出力 ABC DEFG HIJ このようなプログラムの書き方を教えてくだ 2 2022/07/15 14:18
- Java javaのクラスの分け方について質問です。 APIの内部用と外部用でクラスを分けたいのですがインター 2 2022/04/26 16:06
- IT・エンジニアリング プログラマの仕事内容 4 2022/08/13 00:34
- Java Java プログラム public class Main { public static void 3 2023/08/10 23:46
- Java java 飾子を付けること(public static・・・) ・コンソールへの出力処理はmainメ 2 2022/06/16 19:34
- Ruby 【JAVA】数字をひし形に出力するプログラムについて 2 2022/07/11 23:32
- C言語・C++・C# 未解決の外部シンボル _printfが関数_mainで参照されました 1 2022/09/18 15:28
- その他(Microsoft Office) Microsoft Edgeの「ニュースと関心事項」についてお聞きします。 3 2023/05/22 12:08
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- Java javaの質問です 次の機能を有するメソッド4つを自クラスに作成し、実装したいです 【機能】 足し算 1 2022/06/15 15:14
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「隣の芝生は青く見える」現象...
-
恋愛
-
そんなにお金がなくても年に1度...
-
小学4年の頃、好きな同級生にス...
-
ページ遷移時にアコーディオン...
-
共通で使う関数を集めたクラス...
-
重複エラーを解決するには
-
スペイン語で「少人数指導」は...
-
dllと同じプロジェクトにする方法
-
エクセルVBAでのwitheventsにつ...
-
Javaの継承についてです。 この...
-
フレームとウィンドウの違いに...
-
成人式の後中3のクラスで集まろ...
-
ネスカフェ エクセラ と UCCク...
-
JDBCで複数のクラスファイルを...
-
サーブレットを始めようとした...
-
tomcat上でのpropertiesファイ...
-
JavaからSQLサーバのViewにアク...
-
同じクラスにならない確率を教...
-
下記の問合せを行うクエリを、P...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
同じクラスにならない確率を教...
-
配列の重複する値とその個数を...
-
java eclipse 型に解決できません
-
3年間同じクラスになる確率
-
どこからも呼ばれていない無意...
-
共通で使う関数を集めたクラス...
-
ページ遷移時にアコーディオン...
-
同じパッケージ、クラス名が含...
-
IPアドレスの3バイト目の呼び方
-
同一パッケージにあるクラスが...
-
EclipseでJSPのコンパイルエラー
-
コンボボックスのマウスホイー...
-
Cstring(日本語含む)をcharに...
-
dllと同じプロジェクトにする方法
-
VBAもしくはVB6:クラスの中で...
-
main()を持つクラスが2つ以上...
-
複数のクラスで共通した関数を...
-
重複エラーを解決するには
-
string formatについて
-
UMLのクラス図はmain()も含むん...
おすすめ情報