前提・実現したいこと
Servletの学習をJavaDriveのサイトを参考にしながらEclipseで実行しています。
リダイレクトの設定(SendRedirect)の章でHTMLからServletへ遷移する際に失敗してしまいます。
↓参考ページ
https://www.javadrive.jp/servlet/response/index6.html
パスの設定、マッピングが原因ではないのかと何日か試行錯誤してみたのですがエラーを解消することができません。
以下の内容なのですが、よろしくお願いします。
発生している問題・エラーメッセージ
file:///Users/hoge/pg/eclipse-workspace/Servlet_Sample7/src/ResponseSample7?url=www.yahoo.co.jp Page load failed with error: The requested URL was not found on this server.
該当のソースコード
html
1 2 3<!DOCTYPE html> 4 5<html lang="ja"> 6<head> 7<meta http-equiv="Content-Type" Content="text/html;charset=UTF-8"> 8<title>サンプル</title> 9</head> 10<body> 11 12<p>リダイレクト先の設定</p> 13 14<form action="/ResponseSample7" method="get"> 15 16<table> 17<tr> 18<td>リダイレクト先の選択</td> 19<td> 20<select name="url" size="2"> 21<option value="www.yahoo.co.jp">YAHOO</option> 22<option value="www.google.co.jp">GOOGLE</option> 23</select> 24</td> 25</tr> 26</table> 27<input type="submit" value="送信"> 28</form> 29 30</body> 31</html>
JAVA
1 2import java.io.IOException; 3import java.io.PrintWriter; 4 5import javax.servlet.ServletException; 6import javax.servlet.annotation.WebServlet; 7import javax.servlet.http.HttpServlet; 8import javax.servlet.http.HttpServletRequest; 9import javax.servlet.http.HttpServletResponse; 10 11/** 12 * Servlet implementation class ResponseSample5 13 */ 14@WebServlet("/ResponseSample7") 15public class ResponseSample7 extends HttpServlet { 16 private static final long serialVersionUID = 1L; 17 18 public void doGet(HttpServletRequest request, HttpServletResponse response) 19 throws IOException, ServletException{ 20 21 response.setContentType("text/html; charset=UTF-8"); 22 PrintWriter out = response.getWriter(); 23 24 String tmp; 25 26 String url = ""; 27 tmp = request.getParameter("url"); 28 if (tmp == null || tmp.length() == 0){ 29 url = "http://www.excite.co.jp/"; 30 }else{ 31 url = "http://" + tmp; 32 } 33 34 response.sendRedirect(url); 35 } 36} 37
試したこと
フォルダの配置やパスの設定の見直し
ServletのファイルでマッピングせずWeb.xmlファイルでマッピング
Eclipseでの実行ではなくJavaDriveと同じ環境での実行
補足情報(FW/ツールのバージョンなど)
java version "13.0.2" 2020-01-14
Eclipse IDE for Enterprise Java Developers.Version: 2019-12 (4.14.0)
Server version: Apache Tomcat/9.0.30
あなたの回答
tips
プレビュー