![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
サーブレットのマッピングについて教えてください。
現在サーブレットを学習しています。
書籍に付属するサンプルをとりあえず動かしている段階なのですが、マッピングがうまくいきません。
http://localhost:8080/エントリポイント/servlet/MyServlet
とアドレス入力した場合はきちんと表示されるのですが、WEB-INF直下にweb.xmlファイルを作成して
http://localhost:8080/エントリポイント/servlet/ms
にアクセスすると404エラーが返ってきます。
これは何が原因なのでしょうか?
知識不足もあって皆目検討がつかないため、皆様のお力をお借りしたく思います。
よろしくお願いいたします。
なお、サーブレットはWEB-INF直下のclassesというディレクトリ内にコンパイルしておいてあります。
また、web.xmlの内容は以下のとおりです。
<?xml version="1.0" encoding="Shift_JIS"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<!-- MyServlet→msと定義する -->
<web-app>
<servlet>
<servlet-name>ms</servlet-name>
<servlet-class>MyServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ms</servlet-name>
<url-pattern>/classes</url-pattern>
</servlet-mapping>
</web-app>
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_03.png?e8efa67)
No.1ベストアンサー
- 回答日時:
<url-pattern>/classes</url-pattern>ですと、
http://localhost:8080/○○/classesというURLに公開することになってしまいます。おそらく、<url-pattern>の意味を勘違いされているのでしょう。これは、クラスがある場所ではなく、クラスの公開先です。/servlet/msに公開したければ、<url-pattern>/servlet/ms</url-pattern>とする必要があります。
それから、<servlet-class>がMyServletとなっていますが、これはパッケージはないのですか? 例えば、jp.hogeパッケージに配置されているのであれば、jp.hoge.MyServletと指定しなければクラスは見つからないので注意してください。
ご回答ありがとうございます。
<url-pattern>/classes</url-pattern>
を
<url-pattern>/servlet/ms</url-pattern>
と変更すると、ちゃんと表示されました。
パッケージというものについては、まだよくわかりません。
とりあえず書籍の内容のとおりに、付属CD内のデータを使って動かしてみているだけなのです。
使用した書籍には
<url-pattern>/classes</url-pattern> ←配備先ディレクトリ
という風に書かれていたのですが、そもそもこれが大嘘だったのですね。
勉強になりました。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- IT・エンジニアリング プログラマの仕事内容 4 2022/08/13 00:34
- その他(Microsoft Office) Microsoft Edgeの「ニュースと関心事項」についてお聞きします。 3 2023/05/22 12:08
- その他(プログラミング・Web制作) pythonのWebスクレイピングでfind_allだとurlがNoneに 4 2022/04/17 18:21
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- MySQL PHPとMySQLを使った掲示板の作り方 1 2022/06/02 13:00
- HTML・CSS 私の能力からして間違っていないような気がします。 4 2022/09/30 13:24
- アプリ Android studio 初心者 Hello Android!しか表示されない 1 2023/08/01 08:47
- C言語・C++・C# プログラミングの問題です。至急教えてください。 /***から***/の部分をプログラミングにしてほし 1 2022/10/13 11:48
- HTML・CSS ただいま勉強始めたての初心者です。フォームを縦並べにしたいです。 2 2022/11/20 17:18
- HTML・CSS WEBサイトの構築。表示データとWEBデザインを分離する考え方を専門用語・業界用語では何と言うか? 8 2022/09/27 09:16
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
servlet (resin) について
-
JSPからServletへの遷移
-
JSPからサーブレットを呼び出す...
-
サーブレットのマッピングについて
-
Servletが動かない
-
Eclipseで、プロジェクト名のと...
-
html上で、バッチやexeファイル...
-
Javascriptの値をJava(JSP)へ渡...
-
正しいURL指定しているにもかか...
-
eclipseでスタックサイズを変更...
-
classファイルについて
-
JAVAにのeclipseに関する質問で...
-
Eclipse・プロジェクトで、フォ...
-
Eclipseのアンインストールの仕方
-
split関数で区切り文字がない場合
-
自分で作成したservletを起動す...
-
Javaで年月の取得(YYYYMM形式で)
-
eclipse でclassesフォルダーが...
-
jasper.exceptionとは?
-
eclipseで1ファイルの警告を100...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
JSPからServletへの遷移
-
Servletが動かない
-
サーブレットが起動しない
-
list<クラス名> とは何でしょう...
-
servletでHTTPステータス404エ...
-
[Servlet]ページ表示に関して
-
WEB開発をはじめたばかりの初心...
-
resin.confの設定でご質問です
-
import javax.servlet.*;
-
相手先に送るメール
-
【Servletのエラーについて教え...
-
tomcatのweb.xmlについて
-
サーブレットインスタンスを割...
-
struts関連 web.xmlに複数の<se...
-
JSPからサーブレットを呼び出す...
-
新しいWebアプリをTomcat4.0に...
-
メールでとどいたファイルが開...
-
servlet (resin) について
-
JSPからクラス(サーブレット)...
-
サーブレット フィルタ
おすすめ情報