zoukankan      html  css  js  c++  java
  • tomcat源码阅读_代码篇12

    valve的invoke方法:

    void invoke(Request request,
                Response response)
                throws java.io.IOException,
                       javax.servlet.ServletException

    阀门通过该方法来处理请求,可以有如下顺序执行:

  • 检查或者修改特定的Request和Response的属性
  • 检查Request的属性,并产生相应的Response,并返回其控制权给调用者。
  • 检查Request和Response的属性,将其包装到相应对象中,并传递他们。
  • 如果没有产生抑制的Response对象,调用管道中的下一个阀门,getNext().invoke()
  • 检查但是不修改Response的属性。
  • 阀门不能做如下事情:

  • Change request properties that have already been used to direct the flow of processing control for this request (for instance, trying to change the virtual host to which a Request should be sent from a pipeline attached to a Host or Context in the standard implementation).
  • Create a completed Response AND pass this Request and Response on to the next Valve in the pipeline.
  • Consume bytes from the input stream associated with the Request, unless it is completely generating the response, or wrapping the request before passing it on.
  • Modify the HTTP headers included with the Response after the getNext().invoke() method has returned.
  • Perform any actions on the output stream associated with the specified Response after the getNext().invoke() method has returned
查看全文
  • 相关阅读:
    第一部分:开发前的准备-第二章 基础入门
    多线程笔记
    .net平台下垃圾回收机制
    xml基本操作和保存配置文件应用实例
    .net平台下C#socket通信(中)
    .net平台下C#socket通信(上)
    泛型
    面向过程和面向对象及面向对象的三大特征
    值类型和引用类型及参数传递
    js中typeof与instanceof区别
  • 原文地址:https://www.cnblogs.com/macula7/p/1960469.html
  • Copyright © 2011-2022 走看看