java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > Javaweb提交表单到servlet空白页面

解决Javaweb 提交表单到servlet时出现空白页面,但网站不报错问题

作者:Mayer_从0到1

这篇文章主要介绍了解决Javaweb 提交表单到servlet时出现空白页面,但网站不报错的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

问题描述

提交表单到servlet时出现空白页面,但又网站不报错

截图如下

遇到这个问题查找了很多,仍没有解决,刚开始接触IDEA,以为是路径配置问题,去看@WebServlet和XML,捣了半天,发现没问题,就只有这一个servlet访问不了,其他都能行,最后发现是自己doGet方法没加 this.doPost(request, response);

(之前使用eclipse是这段代码自动生成的,用idea没有自动生成就没太注意)

如下图:

package cn.itcast.web.servlet; 
import cn.itcast.domain.User;
import cn.itcast.service.UserService;
import cn.itcast.service.impl.UserServiceImpl; 
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 java.io.IOException;
 
@WebServlet("/findUserServlet")
public class FindUserServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
 
        // 1.获取id
        String id = request.getParameter("id");
        // 2.通过id查找User
        UserService service = new UserServiceImpl();
        User user = service.findUserById(id);
        // 3.存储
        request.setAttribute("user",user);
        // 4.转发
        request.getRequestDispatcher("/update.jsp").forward(request, response); 
    } 
 
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    }
}

解决方法

doGet方法里加上

this.doPost(request, response);

立马见效

下次再遇到此类问题,自己要多去debug下,别人出现的问题可能一样,但是造成问题的原因很可能不相同。

如果有其他原因的可以讨论下。

javaweb后端调用servlet出现空白

例子:

Login.html跳转LoginServlet

这是项目

Tomcat生成该项目的名称是web_war ,则页面跳转的时候 都要加上/web_war作为路径之一

例如

login.html跳转时 action="/web_war/LoginServlet"

所以最终url访问路径一定是/项目名_war/访问的资源

好了,以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文