异常:HTTP Status 405 - HTTP method GET is not supported by this URL
今天写一个继续servlet后总是出现405错误,后来百度后知道原来是super.service(arg0, arg1);没有删除导致的。
这里我只什么service方法,没有覆盖doget dopost方法。
protected void service(HttpServletRequest arg0, HttpServletResponse arg1)
throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("--------+++++++++++++++++++++++++++----------");
PrintWriter pw=arg1.getWriter();
pw.write("this a page!");
super.service(arg0, arg1);
}
super.service(arg0, arg1);这个以前是可以的,但是不知道为什么不行了现在,可能是更新了,所以子类一定要去掉这个,
或者不去掉但是要写出doget或者dopost方法,重点是这2个方法最后要去掉//super.doGet(req, resp);或者super.doPost(req, resp);这样即使开始的子类service方法最后那个super没去掉也是可以的。
申明:解决方法:
1,子类重写service或者doGet或doPost等方法;
2,在你扩展的Servlert中重写service或doGet或doPost等方法来处理请求和响应时 不要调用父类HttpServlet的
doGet或doPost等方法,即去掉super.doGet(request, response)和super.doPost(request, response);
即使service调用了 ,其他的2个方法一定要去掉。所以最好重写后都去掉