HTTP Status 405 - HTTP method POST is not supported by this URL
程序出现:
HTTP Status 405 - HTTP method POST is not supported by this URL
发现原因如下
源程序:
request.getRequestDispatcher("PageQueryServlet“).forward(request, response);
改为:
response.sendRedirect("/ShoppingCart/PageQueryServlet”);
因为
request.getRequestDispatcher
是请求转发,只有一次请求,在服务器端转发不经过客户端,前后共享一个request。当
getRequestDispatcher
转发jsp时可以不用重定向,但是当在一个servlet中转到另一个servlet中是,就必须要用重定向了,应为重定向是二次请求。
request跳转叫页面传递就是一个页面的请求传递到另外一个页面,这个你在前一个页面中对该请求的操作比如赋值,获得参数都能通过request获得。
response跳转叫页面重定向,就是你之前发过来的请求到达该处就结束了,如果还要做请求则是由该页面在重新发送一个请求了,这个请求跟之前重定向的请求不是同一个请求了,因此你通过request拿不到重定向前的请求参数 .
-----------------------------------------网上搜集得来---------------------------------------------
forward,include,redirect是jsp中web页面(jsp或servelt)的三种不同的路由关系,三个貌似相同,其实还是有许多差别的,而了解这些细微的差别,在web开发中是很重要的。
说明:
一、forward、include由javax.servlet.RequestDispatcher来封装,由包容器container提供RequestDispatcher接口的实现,其中声明如下:
void forward(ServletRequest req,ServletResponse res)
void include(ServeltRequest req,ServletResponse res)
可以通过两种方式得到RequestDispatcher:
1、ServletContext.getRequestDispatcher(String path);
其中这里的path必须开始为"/",即这里的path必须相对于context的root.
2、ServeltRequest.getRequestDispatcher(String path)
这里的path可以为相对路径,如果path开始为"/",则也认为是从context的root开始的。
二、Redirect由HttpServletResponse.sendRedirect(String location)来支持
差别:
三个都可以对用户的request进行转发,但是还是有许多的不同,差别最主要集中在如下几个方面:
1、forward与include共亨Request范围内的对象,而redirect则不行,即:如果一个javabean被声明为request范围的话,则被forward到的资源也可以访问这个javabean,而redriect则不行。
2、forward与include基本上都是转发到context内部的资源,而redirect可以重定向到外部的资源,如: req.sendRedriect("http://www.baidu.com");
HTTP Status 405 - HTTP method POST is not supported by this URL相关推荐
- Servlet HTTP Status 405 - HTTP method GET is not supported by this URL
是因为重写doPost或doGet方法时 super.doPost(req, resp); super.doGet(req, resp); 去掉这2句话就可以了
- 405: HTTP method GET is not supported by this URL
[0]README 1)本文旨在解决 405: HTTP method GET is not supported by this URL 的问题: 2)本文raw idea is checkoute ...
- 关于Servlet报错:405 HTTP method GET is not supported by this URL问题解决方法
在编写一个项目的某个Servlet时候,在运行时候,报出了错误 405 HTTP method GET is not supported by this URL,在通过查询,得到大家很多解决方法,为了 ...
- 解决HTTP method POST is not supported by this URL的问题
在学习SpringBoot整合Servlet三大组件的过程中.我首先自定义了一个Servlet继承自HttpServlet,代码如下: @Component public class MyServle ...
- Android异常总结---type Status report message HTTP method GET is not supported by this URL
2.type Status report message HTTP method GET is not supported by this URL description The specif ...
- springMVC出现HTTP Status 405 - Request method 'GET' not supported错误的解决方法
今天在写一个简单的springMVC的表单请求处理时,出现了这个问题.我的form表单用的是post方法提交,并没有使用get方法,出现这个问题时,笔者可谓是一脸懵逼. 这是form表单: 这是对po ...
- HTTP Status 405 – Method Not Allowed HTTP method GET is not supported by this URL
如图 出现这个错误的原因是Servlet中doGet和doPost的问题导致的,要将调用父类方法的super删除.还有doPost中要调用doGet方法.
- Restful风格,PUT修改功能请求,表单中存在文件报错-HTTP Status 405 - Request method 'POST' not supported...
解决方案配置如下 <!-- 配置文件上传解析器 --><bean id="multipartResolver" class="org.springfra ...
- HTTP Status 405 - JSPs only permit GET POST or HEAD
HTTP Status 405 - JSPs only permit GET POST or HEAD 版本:Spring4,Tomcat8 代码如下 web.xml: HiddenHttpMetho ...
最新文章
- 浙大博士130页论文,教你用人工智能挑西瓜
- 2016-05-09的POC Yaas Open Event的代码审查
- Linux网络编程——tcp并发服务器(poll实现)
- 说说json和jsonp 也许你会明白它的原理 含有jQuery实例 蛋疼 ,我面试的时候被卡了 赶紧写一个回顾...
- WiredTiger存储引擎知多少?
- 全球高校CS实力最新排行:清华AI界第二,中科院视觉领域最强
- sublime安装markdown
- WinForm窗体重要属性与公共控件的重要属性
- maxdea如何计算指数_MaxDEA
- 论文精读- The Evaluation of the Urban Road Network Based on the Complex Network
- 分式的二阶导数怎么求_分式复合函数求导公式大全
- 麦当劳和肯德鸡的笑话
- 【财经期刊FM-Radio|2021年03月01日】
- HTML5 屏幕适配笔记
- 房产管理系统系统与数据中心对接要遵循的标准和规范
- DbVisualizer解决中文乱码问题
- 网关短信 群发 为什么卡发短信 群发 贵 ?
- linux制作U盘win10启动盘
- I. Sequence
- superset设置起止时间为明天