001    /*
002    * Licensed to the Apache Software Foundation (ASF) under one or more
003    * contributor license agreements.  See the NOTICE file distributed with
004    * this work for additional information regarding copyright ownership.
005    * The ASF licenses this file to You under the Apache License, Version 2.0
006    * (the "License"); you may not use this file except in compliance with
007    * the License.  You may obtain a copy of the License at
008    *
009    *     http://www.apache.org/licenses/LICENSE-2.0
010    *
011    * Unless required by applicable law or agreed to in writing, software
012    * distributed under the License is distributed on an "AS IS" BASIS,
013    * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014    * See the License for the specific language governing permissions and
015    * limitations under the License.
016    */
017     
018    package javax.servlet.jsp;
019    
020    import javax.servlet.*;
021    import javax.servlet.http.*;
022    import java.io.IOException;
023    
024    /**
025     * The HttpJspPage interface describes the interaction that a JSP Page
026     * Implementation Class must satisfy when using the HTTP protocol.
027     *
028     * <p>
029     * The behaviour is identical to that of the JspPage, except for the signature
030     * of the _jspService method, which is now expressible in the Java type
031     * system and included explicitly in the interface.
032     * 
033     * @see JspPage
034     */
035    
036    public interface HttpJspPage extends JspPage {
037    
038        /** The _jspService()method corresponds to the body of the JSP page. This
039         * method is defined automatically by the JSP container and should never
040         * be defined by the JSP page author.
041         * <p>
042         * If a superclass is specified using the extends attribute, that
043         * superclass may choose to perform some actions in its service() method
044         * before or after calling the _jspService() method.  See using the extends
045         * attribute in the JSP_Engine chapter of the JSP specification.
046         *
047         * @param request Provides client request information to the JSP.
048         * @param response Assists the JSP in sending a response to the client.
049         * @throws ServletException Thrown if an error occurred during the 
050         *     processing of the JSP and that the container should take 
051         *     appropriate action to clean up the request.
052         * @throws IOException Thrown if an error occurred while writing the
053         *     response for this page.
054         */
055        public void _jspService(HttpServletRequest request,
056                                HttpServletResponse response)
057           throws ServletException, IOException;
058    }