ホームページ >Java >&#&チュートリアル >サーブレットが JSP ページに転送するときにパスに問題がある場合はどうすればよいですか?

サーブレットが JSP ページに転送するときにパスに問題がある場合はどうすればよいですか?

零下一度
零下一度オリジナル
2017-07-16 17:06:221714ブラウズ

サーブレット JSP ページに転送するときにパスに問題がある場合はどうすればよいですか?以下に解決策を示します

1. 現象と概念

1. 問題

サーブレットがJSPページに転送されると、サーブレットのパスがブラウザのアドレスバーに表示され、JSPページがハイパーリンクは依然として JSP ページのアドレスに相対的であり、サーブレットと JSP ページが同じフォルダーにない場合、パスの混乱が発生します。

2. 絶対パスの概念

contextPath (現在の Web アプリケーションのコンテキスト) に対する相対パス。

解決策: ハイパーリンクには相対パスではなく絶対パスを使用します。 / がサイトのルート ディレクトリを表す場合は、その前に contextPath を追加します。

<a href="<%= request.getContextPath() %>/TestServlet">To B</a>

2. JavaWeb開発における「/」の意味のまとめ

1. 現在のWebアプリケーションのルートパス

「/」は、Servletが処理するアドレスを表します

1) forwarding: request .getRequestDispatcher("/path/b.jsp").forword(request, response);

2) web.xml ファイル内のサーブレット アクセス パスのマッピング

<servlet-mapping>
    <servlet-name>TestServlet</servlet-name>
    <url-pattern>/TestServlet</url-pattern></servlet-mapping>

3) さまざまなカスタマイズされたタグ内の '/'。

2. Web サイトのルート パス

「/」は、localhost:8080/ を表します: ブラウザによって処理されるアドレス

1) ハイパーリンク: b8ea743517209a71d33402859b0b1f21To B975175ebfb16bf406b67d2af1f3c8001

3) リダイレクト: response.sendRedirect("/b.jsp")

以上がサーブレットが JSP ページに転送するときにパスに問題がある場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。