Tomcat の 404 エラーの解決方法の詳細な説明

Tomcat の 404 エラーの解決方法の詳細な説明

Tomcat テストで 404 問題が発生します。問題は次のとおりです。

HTTP ステータス 404 - 見つかりません タイプ ステータス レポート メッセージ 要求されたリソース [/chapter06/IndexServlet] は使用できません 説明 オリジン サーバーは、ターゲット リソースの表現を見つけることができなかったか、リソースの既存の表現を公開することを望んでいません。
アパッチトムキャット/9.0.37

問題は、ブラウザが Java ファイルに直接アクセスできないことです。

問題の解決策

1. この問題はフォームを送信するときに発生します

<フォーム名 = "reg" アクション = "/login" メソッド = "post">
 <メタ文字セット="UTF-8">
 アカウント: <input type="text" name="username"/><br>
 パスワード: <input type="password" name="passward"/><br>
 <input type="submit" value="送信" id="bt">
</フォーム>

<form name = "reg" action="/login" method="post"> action=" " 内の参照はルーティング アドレスである必要があります (このルーティング アドレスは自分で構成する必要があります (たとえば、自分で構成したフォームを受信する Java クラスのルートは /login であり、自分の Java クラス /chapter06/src/LoginServlet のアクセス パスではありません))
Java ファイルのルーティングを構成する方法は次のとおりです。

2. srcパスのJavaファイルにアクセスするとエラーが報告される

対象の Java ファイルのルーティングを設定する必要があります。設定方法は 2 つあります。(これは簡単な説明です。詳細を知りたい場合は、ここをクリックしてください)

(1)アノテーションに基づく構成

Tomcat 3 以降にのみ適用されます (3 だったと思いますが、覚えていません)
Javaクラスを追加する

パッケージ cn.itcast.chapter06.session.example;

javax.servlet.ServletException をインポートします。
javax.servlet.annotation.WebServlet をインポートします。
javax.servlet.http.HttpServlet をインポートします。
javax.servlet.http.HttpServletRequest をインポートします。
javax.servlet.http.HttpServletResponse をインポートします。
java.io.IOException をインポートします。
@WebServlet("/logout") //ルーティング設定は以下です public class LogoutServlet extends HttpServlet {
 @オーバーライド
 パブリック void doGet(HttpServletRequest req, HttpServletResponse resp) は ServletException、IOException をスローします {
  要求: getSession()。属性を削除します("ユーザー");
  resp.sendRedirect("/wel");
 }

 @オーバーライド
 パブリック void doPost(HttpServletRequest req, HttpServletResponse resp) は ServletException、IOException をスローします {
  要求、応答を取得します。
 }
}

**@WebServlet("/logout") //これはルーティング構成であり、最もよく使用される方法でもあります。 **引用符はルーティング用です

(2)XMLファイルによる設定

クリックしてweb.xmlファイルを開き、web.xmlコードを変更して< /app >の前にマッピングを追加します。

<サーブレット> 
	 <サーブレット名>hello</サーブレット名> 
	 <サーブレットクラス>com.southwind.servlet.HelloServlet</サーブレットクラス>
 </サーブレット>
<サーブレットマッピング> 
	<サーブレット名>hello</サーブレット名> 
	<url-pattern>/demo2</url-pattern> 
</サーブレットマッピング>

demo2 と hello をマップします。ブラウザで demo2 に直接アクセスすることで、HelloServlet をマップできます。

Tomcat の 404 エラーの問題を解決する方法については、これで終わりです。Tomcat の 404 エラーの詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • vue-cli 履歴モードは、Tomcat デプロイメントの 404 レポートのソリューションを実装します。
  • SSM プロジェクトを Idea にインポートした後、Tomcat を起動するとエラー 404 が発生する問題を解決します。
  • Vue プロジェクトの webpack をパッケージ化して Tomcat にデプロイし、更新すると発生する 404 エラーの問題の解決策
  • Tomcat で 404 カスタム エラー ページを構成する詳細な説明
  • アクセスのためにEclipseのTomcatを起動するときに発生する404問題を解決する方法
  • Tomcat は正常に起動しますが、アクセスしたすべてのページで 404 例外が報告されます。404 例外の概要と分析

<<:  js を使用してウォーターフォール効果を実現する

>>:  MySQLでデータテーブルを作成するときにエンジンMyISAM/InnoDBを設定する

ブログ    

推薦する

MySQL サーバー 5.5 の接続失敗の解決策

mysqlに接続できない問題の解決方法を参考までに紹介します。具体的な内容は以下のとおりです。昨日は...

Vue3.0 における Ref と Reactive の違いの詳細な分析

目次参照と反応参照反応的RefとReactiveの違いshallowRef と shallowRea...

フロートとBFCをクリアするCSSメソッド

イギリスBFC: ブロック書式設定コンテキストBFCレイアウトルール内箱は縦方向に次々に配置されます...

フロントエンドのパフォーマンス最適化を学習するための準備として、HTML ページのレンダリング プロセスを理解する (続き)

昨夜、ブラウザのレンダリングプロセスに関するエッセイを書きましたが、小さなコードで説明しただけでした...

Vueはページを更新するために3つの方法を使用する

プロジェクトを作成しているときに、ユーザーがアクションを実行し、特定の状態を変更し、ページを更新して...

Grafana+Prometheus を使用して MySQL サービスのパフォーマンスを監視する

Prometheus (プロメテウスとも呼ばれる) 公式サイト: https://prometheu...

jsはカスタムドロップダウンボックスを実装します

この記事の例では、カスタムドロップダウンボックスを実装するためのjsの具体的なコードを参考までに共有...

Linux で Nginx 1.16.0 をインストールするための詳細なチュートリアル

最近 Linux をいじっていたので、nginx の新しいバージョンをインストールしたいと思いました...

HTML ではスペースはどのように表現されますか (どのような意味ですか)?

Web 開発では、次のような文字によく遭遇します: &nbsp;これは実際には HTML が...

反応ルーティングでパラメータを渡すいくつかの方法についての簡単な説明

最初のパラメータ渡し方法は、動的ルーティングパラメータ渡しです。リンクのパス属性を設定することで、ル...

Ant Design Pro ログイン機能にグラフィック検証コード コンポーネントを統合する方法

序文:この記事では、Ant Design Proログイン機能にグラフィック検証コードコンポーネントを...

MySQL共通ストレージエンジンの機能と使用方法の詳細な説明

この記事では、一般的な MySQL ストレージ エンジンの機能と使用方法を例を使って説明します。ご参...

データベース内のSQL整合性制約ステートメントの分析

整合性制約整合性制約はテーブル データの正確性を保つためのものです。データが正しくない場合は、そもそ...

Dockerバッチコンテナオーケストレーションの実装

導入Dockerfile ビルドの実行は、単一のコンテナの手動操作です。マイクロサービス アーキテク...

Linuxコマンドとファイル検索の詳しい説明

1. ファイル名検索を実行するwhich ('実行可能ファイル' を検索) //PA...