文档章节

doGet方法和doPost方法

jemoii
 jemoii
发布于 2014/11/06 21:40
字数 481
阅读 47
收藏 0

书中从第366页开始进入EL(JSP表达式语言)的学习,引入EL是为了解决利用<jsp: getProperty>只能访问bean属性的性质,而不能访问属性的性质的性质。


366页底部的Servlet代码补全后为:

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;

public class TestBean extends HttpServlet{
    //书上的Servlet代码
    public void doPost(HttpServletRequest request, HttpServletResponse response)
		                            throws IOException, ServletException{
	//后续章节仅有此部分	                            
        foo.Person p = new foo.Person();
        p.setName("Evan");
    
        foo.Dog dog = new foo.Dog();
        dog.setName("Spike");
        p.setDog(dog);
    
        request.setAttribute("person", p);
        //后续章节仅有此部分
        
        RequestDispatcher view = request.getRequestDispatcher("result.jsp");
        view.forward(request. response);
    }
    //书上的Servlet代码
}

368页上方的JSP代码为:

<html><body>

<!--后续章节仅有此部分-->
Dog's name is: ${person.dog.name}

</body><//html>

在后续章节对EL的剖析中,书中采用Servlet代码+JSP代码+浏览器页面显示的方式对EL进行介绍。给出的Servlet代码和JSP代码不再是完整代码,将给出的示例代码代入使用时,浏览器显示405错误: HTTP method GET is not supported by this URL。


查询得到的错误原因为:

1、没有重写父类HttpServlet中的doGet或doPost方法

2、父类HttpServlet中的doGet或doPost方法覆盖了重写的doGet或doPost方法。

对应的解决方法分别为:

1、重写父类HttpServlet中的doGet或doPost方法;

2、删除super.doGet(request, response)或super.doPost(request, response);

而上述代码重写了doPost方法,也没有使用super语句,仍然出现405错误。最后尝试用doGet方法替换doPost方法,页面显示正确结果。


可能的原因:采用直接在浏览器中输入http://localhost:8088/testJSP1/Tester.do来查看显示结果时,URL的提交方式,应使用doGet方法来处理。

© 著作权归作者所有

共有 人打赏支持
jemoii
粉丝 1
博文 18
码字总数 3346
作品 0
西安
Eclipse+Tomcat配置中遇到的错误

1 eclipse发布项目报错:Multiple Contexts hava a path of “/xxx“ 1.1在Eclipse的Servers中单击“server.xml”文件并打开 1.2在"server.xml"文件中,可以看到重复定义的context,删掉1个即...

510202
2015/03/10
0
0
Servlet doGet和doPost方法

首先你要明确servlet的生命周期和HTTP协议. Serlvet接口只定义了一个服务方法就是service,而HttpServlet类实现了该方法并且要求调用下列的方法之一: doGet:处理GET请求 doPost:处理POST请...

xiahuawuyu
2012/08/02
0
0
Servlet中doGet和doPost等方法

Serlvet接口只定义了一个服务方法就是service,而HttpServlet类实现了该方法并且要求调用下列的方法之一: doGet:处理GET请求 doPost:处理POST请求 当发出客户端请求的时候,调用service 方...

yifon
2014/04/19
0
0
Servlet学习笔记心得

一、初步入门: init 方法被设计成只调用一次。它在第一次创建 Servlet 时被调用,在后续每次用户请求时不再调用。 service() 方法是执行实际任务的主要方法。Servlet 容器(即 Web 服务器)...

moongoblin1
2015/09/24
0
0
Servlet HTTP method GET is not supported HTTP 405

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

alexgaoyh
2014/10/16
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

qduoj~前端~二次开发~打包docker镜像并上传到阿里云容器镜像仓库

上一篇文章https://my.oschina.net/finchxu/blog/1930017记录了怎么在本地修改前端,现在我要把我的修改添加到部署到本地的前端的docker容器中,然后打包这个容器成为一个本地镜像,然后把这...

虚拟世界的懒猫
31分钟前
0
0
UML中 的各种符号含义

Class Notation A class notation consists of three parts: Class Name The name of the class appears in the first partition. Class Attributes Attributes are shown in the second par......

hutaishi
43分钟前
0
0
20180818 上课截图

小丑鱼00
今天
1
0
Springsecurity之SecurityContextHolderStrategy

注:下面分析的版本是spring-security-4.2.x,源码的github地址是: https://github.com/spring-projects/spring-security/tree/4.2.x 先上一张图: 图1 SecurityContextHolderStrategy的三个......

汉斯-冯-拉特
今天
0
0
LNMP架构(Nginx负载均衡、ssl原理、生成ssl密钥对、Nginx配置ssl)

Nginx负载均衡 网站的访问量越来越大,服务器的服务模式也得进行相应的升级,比如分离出数据库服务器、分离出图片作为单独服务,这些是简单的数据的负载均衡,将压力分散到不同的机器上。有时...

蛋黄_Yolks
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部