我对 Java EE 非常陌生,我正在尝试制作一个简单的 servlet,将字符串转发到另一个 jsp 文件,但是当 servlet 运行时,它显示的只是一个白色页面
索引文件工作正常,没有任何错误弹出窗口
这些是我每个文件的重要部分
index.jsp-
<form action="prossessInfo"><br>
<label>Name</label>
<input type="text" name="name"><br>
<input type = "submit" value ="send">
</form>
prossessInfo.java-
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
String url = "/DisplayInfo.jsp";
String usersName = request.getParameter("name");
request.setAttribute("usersName", usersName);
getServletContext().getRequestDispatcher(url).forward(request, response);
}
DisplayInfo.jsp-
<body>
<p>Hello ${usersName}</p><br>
</body>
我只是希望 servlet 显示通过索引文件提供的 usersName,然后让 servlet 将 usersName 转发到 DisplayInfo.jsp 文件
最佳答案
您还没有提到通过表单发送数据的方法。 所以默认它使用get方法向服务器发送数据, 因此您必须将代码放在 Servlet 类的 doGet 方法中。
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String url = "/DisplayInfo.jsp";
String usersName = request.getParameter("name");
request.setAttribute("usersName", usersName);
getServletContext().getRequestDispatcher(url).forward(request, response);
}
或者您可以在表单中提及该方法。
<form action="Controller" method="post"><br>
<label>Name</label>
<input type="text" name="name"><br>
<input type = "submit" value ="send">
</form>
关于Java EE - servlet 未转发到 jsp 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56694532/