1. ホーム
  2. java

response.sendRedirectによる不具合とその対処法

2022-02-14 06:41:16

サーブレットでjspにジャンプする際、response.sendRedirect(request.getContextPath()+"/login.jsp");でログインページにジャンプしてもスタイルや画像がないことに気付くことがあります。

J2EEでは"current path"の概念が不安定なためです。
だから、絶対パスがあったほうがいい、みたいな。
  <% String cp = request.getContextPath();%> この文は、JSPページの先頭を置きます。
  <img src="<%=cp%>/images/xxoo.jpg" /> の後に、次のようなものが続きます。
その前の <% %> テキストは主にアプリが公開されているContextの名前を取得するためのもので、すべてのパスを絶対パスに変換し、プロジェクト名を変更しても関数呼び出しに影響しないよう、直接deathに書き込まないようにしています。