关于"HTTP method GET is not supported by this URL"的错误

写好一个Servlet后访问时抛出"HTTP method GET is not supported by this URL"的错误,先是自己找了一下原因,后又在网络查找相关的原因后找到解决方案。

问题的原因是用Eclipse生成Servlet时,会在doGet和doPost自动添加默认调用父类的构造方法,如下红色标识代码:

  1.     /**
  2.      * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
  3.      */
  4.     protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  5.         // TODO Auto-generated method stub
  6.         super.doGet(request, response);
  7.     }
  8.     /**
  9.      * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
  10.      */
  11.     protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  12.         // TODO Auto-generated method stub
  13.         super.doPost(request, response);
  14.     }

这个时候就会有个问题,如果直接调用父类的方法,就相当于父类HttpServlet的doGet或doPost方法覆盖了你重写的方法,而父类HttpServlet的doGet或doPost方法的默认实现是返回状态代码为405的HTTP错误,表示对于指定资源的请求方法不被允许。删除以上代码当中调用父类的方法后问题迎刃而解。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值