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

目录
  • 问题描述
    • 截图如下
  • 解决方法
    • 立马见效
  • 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/访问的资源

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

(0)

相关推荐

  • Servlet的5种方式实现表单提交(注册小功能),后台获取表单数据实例

    用servlet实现一个注册的小功能 ,后台获取数据. 注册页面: 注册页面代码 : <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <form action="/RequestDemo/RequestDemo3"

  • IDEA中HTML通过servlet3.0注解名提交表单到servlet类找不到页面的问题

    这个问题困扰我整整一天一夜,先是代码检查路径设置找不出问题,后面换tomcat版不行,抱着侥幸心理换IDEA版本意料之中还是没解决问题. 都快想秃了最后终于完美解决了. 场景描述: IDEA中新建web项目 tomcat正常 HTML通过XML配置文件提交表单正常 当HTML通过Servlet注解名提交表单时404 问题分析: 通常404是路径出现问题,此时第一反应是form中action值和servlet注解值出错,检查后 属性值匹配.检查游览器访问路径最终找到问题出在启动虚拟路径上. 如图访

  • JavaWeb表单注册界面的实现方法

    JavaWeb表单注册界面的实现方法 今天又做了一个注册界面,还是一如既往的从以前的代码copy过来,于是决定总结一下做注册界面的思路,供同学参考. Step1 页面实现 在这一步主要用到了html.css.JavaScript的知识. 1)  html 建立页面基本结构.建议在做html的时候给每个Element都设置id,方便之后的css.JavaScript操作. 2)  css 给节点设置长.宽.边距.边框.背景等样式. 3)  js 设置按钮鼠标悬停时的背景变化等.页面效果实现. St

  • java 出现问题javax.servlet.http.HttpServlet was not found解决方法

    javax.servlet.http.HttpServlet was not found:          最近做项目发现这个javax.servlet.http.HttpServlet was not found错误问题,经过上网查询解决了,这里记录下,可能能帮助到有需要的朋友. 1.我们遇到的错误显示如下: 2.我们右击有错误提示的文件夹,如下: 3.我们点击"配置构建路径",如下: 4.我们再点击"添加库",如下: 5.我们选中上图中标出的选项,再点击下一步

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

    目录 问题描述 截图如下 解决方法 立马见效 javaweb后端调用servlet出现空白 例如 问题描述 提交表单到servlet时出现空白页面,但又网站不报错 截图如下 遇到这个问题查找了很多,仍没有解决,刚开始接触IDEA,以为是路径配置问题,去看@WebServlet和XML,捣了半天,发现没问题,就只有这一个servlet访问不了,其他都能行,最后发现是自己doGet方法没加 this.doPost(request, response); (之前使用eclipse是这段代码自动生成的,

  • 解决Django提交表单报错:CSRF token missing or incorrect的问题

    1.在Django提交表单时报错:Django提交表单报错: CSRF token missing or incorrect 具体报错页面如下: 2.有道词典翻译后如下: 通常,当存在真正的跨站点请求伪造时,或者Django的CSRF机制没有被正确使用时,就会出现这种情况.至于邮递表格,你须确保: 您的浏览器正在接受cookie. 视图函数将一个请求传递给模板的呈现方法. 在模板中,每个POST表单中都有一个{% csrf_token %}模板标记,目标是一个内部URL. 如果您没有使用Csrf

  • 使用JQuery实现Ctrl+Enter提交表单的方法

    有时候我们为了省事就操作键盘组合键去代替使用鼠标,我们今天就使用JQuery实现Ctrl+Enter提交表单. 我们发帖时,在内容输入框中输入完内容后,可以点击"提交"按钮来发表内容.可是,如果你够"懒",你可以不用动鼠标,只需按住键盘上的Ctrl+Enter键,即可提交表单,完成内容发布. 当然,由于输入框是一个多行文本输入框textarea,我们知道,在textarea中按Enter(回车)键可以换行,并不能直接提交表单(submit),而默认情况下,浏览器忽略

  • ThinkPHP提交表单时默认自动转义的解决方法

    本文实例讲述了ThinkPHP提交表单时默认自动转义的解决方法.分享给大家供大家参考.具体方法如下: 一.问题: 在ThinkPHP中提交表单插入数据的时候,单引号和双引号是会被自动转义的,就是会自动的加上反斜线,但是我不想给单引号和双引号加上反斜线. 在ThinkPHP中提交表单插入数据的时候,单引号和双引号是会被自动转义的,就是会自动的加上反斜线,但是我不想给单引号和双引号加上反斜线,在ThinkPHP中提交表单插入数据的时候,单引号和双引号是会被自动转义的,就是会自动的加上反斜线,但是我不

  • form.submit()不能提交表单的错误原因及解决方法

    直接上代码把: <div id="register"> <h4>会员注册</h4> <div class="formdiv"> <form method="post" action="register.php?action=register" name="register" id="registerForm"> <dl&g

  • Chrome Form多次提交表单问题的解决方法

    今天用chrome提交一个表单时,发现一个奇怪的问题: 复制代码 代码如下: //提交表单 document.frmOrder.action = 'http://www.abc.com/d.aspx'; document.frmOrder.method = 'POST'; document.frmOrder.target = '_blank'; document.frmOrder.submit(); 第一次提交可以,第二次提交就没有任何响应了.需要重新加载页面后才可以提交,而这个问题在Firef

  • Ajax提交表单页面刷新很快的解决方法

    注:使用ajax 提交表单时 type类型最好不用submit 用button合适 <form> <div class="col-md-9 col-sm-9 col-xs-12 col-md-offset-3"> <input type="button" class="btn btn-info" value="重置" onclick="return resetaa()">

  • JSP中的FORM表单中只有一个input文本时,按回车键将会自动提交表单

    一个列表界面只有一个输入框查询条件,当首次进入在输入框中输入汉字后,按回车键发现输入框中汉字变成乱码!本以为一个很简单不过的问题,结果却花了好久才找到原因(据说是浏览器问题),按回车后执行了两次查询. 1.未修改前代码: <form id="ff" name="ff" method="post"> <input type="text" id="userName" name="us

  • JS和jQuery使用submit方法无法提交表单的原因分析及解决办法

    昨天,在做一个表单异步提交内容的时候,遇到很奇怪的问题,submit()方法无法进行提交,每次提交都是把 当前给刷新了,网络抓包发现,每次都是 get方式去获取 当前页面,完全没有post 请求,想着以前 遇上这样的问题 都是因为 表单中 有 name 或者 id 这些命名跟submit 有冲突,但是检查了几次,始终没有发现 名字冲突,所以这个可能性被排除. 平常自己做触发按钮,基本不用a 标签,但是昨天不知道什么 问题,竟然用了 a 而且还给了 href 为空,由于这个a 的class 有多个

随机推荐