Save This Page
Home » apache-tomcat-6.0.16-src » org.apache » jasper » runtime » [javadoc | source]
    1   /*
    2    * Licensed to the Apache Software Foundation (ASF) under one or more
    3    * contributor license agreements.  See the NOTICE file distributed with
    4    * this work for additional information regarding copyright ownership.
    5    * The ASF licenses this file to You under the Apache License, Version 2.0
    6    * (the "License"); you may not use this file except in compliance with
    7    * the License.  You may obtain a copy of the License at
    8    * 
    9    *      http://www.apache.org/licenses/LICENSE-2.0
   10    * 
   11    * Unless required by applicable law or agreed to in writing, software
   12    * distributed under the License is distributed on an "AS IS" BASIS,
   13    * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   14    * See the License for the specific language governing permissions and
   15    * limitations under the License.
   16    */
   17   
   18   package org.apache.jasper.runtime;
   19   
   20   import java.io.IOException;
   21   import java.io.PrintWriter;
   22   
   23   import javax.servlet.ServletOutputStream;
   24   import javax.servlet.ServletResponse;
   25   import javax.servlet.http.HttpServletResponse;
   26   import javax.servlet.http.HttpServletResponseWrapper;
   27   import javax.servlet.jsp.JspWriter;
   28   
   29   /**
   30    * ServletResponseWrapper used by the JSP 'include' action.
   31    *
   32    * This wrapper response object is passed to RequestDispatcher.include(), so
   33    * that the output of the included resource is appended to that of the
   34    * including page.
   35    *
   36    * @author Pierre Delisle
   37    */
   38   
   39   public class ServletResponseWrapperInclude extends HttpServletResponseWrapper {
   40   
   41       /**
   42        * PrintWriter which appends to the JspWriter of the including page.
   43        */
   44       private PrintWriter printWriter;
   45   
   46       private JspWriter jspWriter;
   47   
   48       public ServletResponseWrapperInclude(ServletResponse response, 
   49   					 JspWriter jspWriter) {
   50   	super((HttpServletResponse)response);
   51   	this.printWriter = new PrintWriter(jspWriter);
   52   	this.jspWriter = jspWriter;
   53       }
   54   
   55       /**
   56        * Returns a wrapper around the JspWriter of the including page.
   57        */
   58       public PrintWriter getWriter() throws IOException {
   59   	return printWriter;
   60       }
   61   
   62       public ServletOutputStream getOutputStream() throws IOException {
   63   	throw new IllegalStateException();
   64       }
   65   
   66       /**
   67        * Clears the output buffer of the JspWriter associated with the including
   68        * page.
   69        */
   70       public void resetBuffer() {
   71   	try {
   72   	    jspWriter.clearBuffer();
   73   	} catch (IOException ioe) {
   74   	}
   75       }
   76   }

Save This Page
Home » apache-tomcat-6.0.16-src » org.apache » jasper » runtime » [javadoc | source]