package
hoge;
import
java.io.IOException;
import
javax.servlet.RequestDispatcher;
import
javax.servlet.ServletContext;
import
javax.servlet.ServletException;
import
javax.servlet.annotation.WebServlet;
import
javax.servlet.http.HttpServlet;
import
javax.servlet.http.HttpServletRequest;
import
javax.servlet.http.HttpServletResponse;
import
javax.servlet.http.HttpSession;
/**
* Servlet implementation class Check
*/
@WebServlet
(
"/Check"
)
public
class
Check
extends
HttpServlet {
private
static
final
long
serialVersionUID = 1L;
protected
void
processRequest(HttpServletRequest request, HttpServletResponse response)
throws
ServletException, IOException {
HttpSession session = request.getSession(
true
);
response.setContentType(
"text/html;charset=UTF-8"
);
request.setCharacterEncoding(
"UTF-8"
);
String name = request.getParameter(
"name"
);
String age = request.getParameter(
"age"
);
String url =
"/input.jsp"
;
String errmsg =
null
;
if
(name.equals(
""
) || name ==
null
|| age.equals(
""
) || age ==
null
) {
errmsg =
"空白となっています。"
;
request.setAttribute(
"errmsg"
, errmsg);
}
else
if
(!age.matches(
"^[0-9]+$"
)) {
errmsg =
"年齢は半角数字で入力して下さい。"
;
request.setAttribute(
"errmsg"
, errmsg);
}
else
{
url =
"/view.jsp"
;
session.setAttribute(
"name"
, name);
session.setAttribute(
"age"
, age);
}
ServletContext context = getServletContext();
RequestDispatcher rd = context.getRequestDispatcher(url);
rd.forward(request, response);
}
protected
void
doGet(HttpServletRequest request, HttpServletResponse response)
throws
ServletException, IOException {
processRequest(request, response);
}
protected
void
doPost(HttpServletRequest request, HttpServletResponse response)
throws
ServletException, IOException {
processRequest(request, response);
}
}
【view.jsp】
<%@ page language=
"java"
contentType=
"text/html; charset=UTF-8"
pageEncoding=
"UTF-8"
session=
"true"
%>
<html>
<head>
"Content-Type"
content=
"text/html; charset=UTF-8"
>
<title>結果を出力します</title>
</head>
<body>
名前:<%= session.getAttribute(
"name"
) %>さん
年齢:<%= session.getAttribute(
"age"
) %>歳
</body>
</html>