- ベストアンサー
サーブレットを始めようとしたのですが・・・
サーブレットを始めようとして、「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 個 調べた感じだとクラスパスの設定が間違っている可能性大ということらしいのですが、何度確かめてもクラスパスは合ってると思うのです・・ 何かこれじゃないか?という原因に心当たりがあればよろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
classpathを通してください。 またはコマンドプロンプトで下記のように。(Tomcat5.0の例) >SET CLASSPATH=C:\Program Files\Apache Software Foundation\Tomcat 5.0\common\lib\servlet-api.jar;. この場合は起動するたびに毎回行います。 環境変数で設定すればcommand.batファイルに書き込まれる 訳ですね。
その他の回答 (2)
- pcbeginner
- ベストアンサー率46% (261/560)
>また、関係あるのかな?と思って「servlet-api.jar」をエディタで開いてみたら文字化けだらけだったのですが、それは関係ないでしょうか?こういうファイルはエディタで見ると文字化けしているのが普通なのでしょうか? (直接質問の回答ではありませんが…) 普通です。(というか文字化けではありません。) ~.jarはクラスファイルをzip形式で圧縮したものです。 中身はバイナリなので、エディタで開いて見ても、(おそらく大多数の)人が表示された内容を理解することはできません。
- めとろいと(@naktak)
- ベストアンサー率36% (785/2139)
コマンドプロンプトから、指定した環境変数のクラスパスを入力して ちゃんとアクセス出来ているか確認してみて下さい。 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」をエディタで開いてみたら文字化けだらけだったのですが、それは関係ないでしょうか?こういうファイルはエディタで見ると文字化けしているのが普通なのでしょうか?
お礼
回答ありがとうございます。 そうですか・・・