1
2

【サーブレット/JSP/JDBC】初心者の404エラー原因メモ

Last updated at Posted at 2024-08-17

初心者が初めてサーブレット/JSP/JDBCを使ってWebアプリケーションを制作する際、404などのエラーで上手く表示されないことがあったので備忘録として残します。

使用環境

PC:MacBook Air 2018
OS:macOS Sonoma 14.3.1
IDE:Eclipse 2023
Webコンテナ:Tomcat 10.1.18
RDBMS:MySQL 8.3.0

404エラーとは?

404エラー(404 not found)とは、存在しないWebページにアクセスしようとした際に表示されるエラーです。

web.xmlのservletタグ、servlet-mappingタグのサーブレット名違い

Eclipseでサーブレットを作成した際にweb.xmlにservletタグ、servlet-mappingタグが作成されます。
しかし、サーブレットを右クリック→リファクタリング→名前の変更でサーブレット名を変更してもservletタグ、servlet-mappingタグ内のサーブレット名は変更されず、404エラーが表示されてしまいます。
なので、サーブレット名を後から変更した際はweb.xmlのservletタグ、servlet-mappingタグ内のサーブレット名も修正するようにしています。

servletタグ、servlet-mappingタグが見つからない

Eclispseでサーブレットを作成する際、「サーブレット」ではなく通常の「クラス」から作成するとservletタグ、servlet-mappingタグが作成されないので404エラーが表示されました。

JSPファイルのpageディレクティブ内のスペルミス

JSPファイルのpageディレクティブ内にスペルミスがあった場合も、404エラーが表示されました(正:pageEncoding="UTF-8"、誤:pageEncording="UTF-8"など)。

その他のエラー

No suitable driver found for

JDBCドライバの準備(Tomcatのlibディレクトリに配置)をせずにJDBCでデータベースに接続しようとしたら、エラー(No suitable driver found for)が表示されました。

java.lang.IllegalArgumentException

サーブレットの情報をweb.xmlのservletタグ、servlet-mappingタグで指定して、なおかつアノテーションでURLを指定したらjava.lang.IllegalArgumentExceptionのエラー(サーブレット[サーブレット名]と[パッケージ名.サーブレット名]を同じurl-pattern[/サーブレット名] にマッピングすることはできません。)が表示されました。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2