
環境:Eclipce3.2、Tomcat5.5.2、JDK1.5.0_11を使用。
○サーブレットプログラム
package dispatch;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class ForwardServlet2 extends HttpServlet
{
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request ,
HttpServletResponse response)
throws ServletException , IOException
{
PrintWriter out = response.getWriter();
out.println("Hello by Eclipse");
}
}
○web.xmlの内容は以下の通り
<web-app>
<!-- JSPC servlet mappings start -->
<servlet>
<servlet-name>ForwardServlet2</servlet-name>
<servlet-class>dispatch.ForwardServlet2</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ForwardServlet2</servlet-name>
<url-pattern>/ForwardServlet2</url-pattern>
</servlet-mapping>
<!-- JSPC servlet mappings end -->
</web-app>
アクセスはhttp://localhost:8080/basic/dispatch/ForwardServ …
アクセスすると、
type ステータスレポート
メッセージ /basic/dispatch/ForwardServlet2
説明 The requested resource (/basic/dispatch/ForwardServlet2) is not available.
が表示されてしまいます。
何度も最初から作り直しては、見直しをしましたが
エラーになる原因をつかむことができない状態です。
間違い、不足している箇所がありましたら、ご指摘の程お願い致します。
No.1ベストアンサー
- 回答日時:
まず考えられる可能性は、
http://localhost:8080/basic/ForwardServlet2
でアクセスすると見えるかも知れないという事かな。
パッケージdispatchはあくまでJava側の話であって、コンテキストパスからの相対URLには何の関係もない。ここで、コンテキストパスとは/basicの事だ。もちろん、コンテキストパスが/basic/dispatchである可能性もあるが、それはあなたにしか分からない。TomcatのどこにそのWebアプリケーションをデプロイしたかが問題だ。
web.xmlの中では、servletタグによってフルクラス名(dispatch.ForwardServlet2)にForwardServlet2という名前をつけ、servlet-mappingタグによって名前をつけたForwardServlet2を/ForwardServlet2という「コンテキストパスからの相対パス」でアクセスできるようにしているんだ。だから、そのEclipseのプロジェクトにindex.jspを置いてみて、それが
http://localhost:8080/basic/inde.jsp
でアクセスできるのであれば、サーブレットには
http://localhost:8080/basic/ForwardServlet2
でアクセスする事になる。
説明が不足している箇所は、Tomcatのどこ(どんなコンテキストパス名)に君が作ったWebアプリをデプロイしているか、だな。URLが間違っている、という場合は、質問を受けている人がURLを構成できるだけの情報をあげんといけん。
返信ありがとうございます。
教えていただきました手順を試し、理解をすることができました。
コンテキストパスへの理解が弱かったことが原因でしたので、
今後はここを中心に勉強していきます。
ありがとうございます
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(Microsoft Office) Microsoft Edgeの「ニュースと関心事項」についてお聞きします。 3 2023/05/22 12:08
- IT・エンジニアリング プログラマの仕事内容 4 2022/08/13 00:34
- その他(プログラミング・Web制作) pythonのWebスクレイピングでfind_allだとurlがNoneに 4 2022/04/17 18:21
- Java java final 1 2022/06/10 22:49
- FX・外国為替取引 1.The U.S. FI sells $100 million for pounds at the 1 2022/05/03 00:08
- その他(プログラミング・Web制作) Pythonで会員サイトの自動ログイン ID Nameがない 1 2022/12/16 02:09
- その他(プログラミング・Web制作) laravel 本番環境でメールが送れません。 1 2023/02/17 17:57
- オープンソース Flaskでサーバー立ち上げに関して 1 2023/08/12 21:02
- Java java 入力 3 4 3 出力 ABC DEFG HIJ このようなプログラムの書き方を教えてくだ 2 2022/07/15 14:18
- PHP コメント機能に返信欄を矢印で追加したい 1 2022/05/09 21:17
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
servletのコンパイルエラーにつ...
-
apache2.0.x系列でのPHPのイン...
-
CreateProcessのコマンド・ライ...
-
Javaで作製したプログラムはJVM...
-
vs codeはオフラインでも使用で...
-
DOS窓でJavaファイルの実行がで...
-
.jarファイルの中身って書き換...
-
Eclipseのアンインストールの仕方
-
javaが文字コードの影響でコン...
-
html上で、バッチやexeファイル...
-
Eclipseで、プロジェクト名のと...
-
ブラウザではなくパソコンにFla...
-
Javascriptの値をJava(JSP)へ渡...
-
VisualStudioでC++クラスを追加...
-
どちらを選択すればいいですか?
-
LaTeXでのアンダーバーの入力
-
このページでスクリプトエラー...
-
javaクラスファイルをEclipseで...
-
スタンドアロンJavaプログラム(...
-
earファイルを展開する方法
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
JSPからServletへの遷移
-
サーブレットが起動しない
-
Tomcatでプログラムが動作しま...
-
struts関連 web.xmlに複数の<se...
-
サーブレットについて
-
JSPとサーブレット
-
Servletが動かない
-
resin.confの設定でご質問です
-
Tomcatによるサーブレット起動...
-
eclipse servlet 404対処方法
-
eclipseでwarの入れ子
-
サーブレット フィルタ
-
servlet (resin) について
-
servletのコンパイルエラーにつ...
-
サーブレットが実行できない
-
TOMCAT5
-
Tomcat起動時にエラーが発生し...
-
list<クラス名> とは何でしょう...
-
eclipseでのServlet作成
-
xmlについて
おすすめ情報