KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > tester > Include04


1 /*
2  * Copyright 1999, 2000, 2001 ,2004 The Apache Software Foundation.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */

16
17 package org.apache.tester;
18
19
20 import java.io.*;
21 import javax.servlet.*;
22 import javax.servlet.http.*;
23
24 /**
25  * Test to ensure that we can include a servlet (without flushing the buffer),
26  * then forward to another servlet that replaces the original contents.
27  *
28  * @author Craig R. McClanahan
29  * @version $Revision: 1.2 $ $Date: 2004/02/27 14:58:57 $
30  */

31
32 public class Include04 extends HttpServlet {
33
34     public void doGet(HttpServletRequest request, HttpServletResponse response)
35         throws IOException, ServletException {
36
37         // Prepare this response
38
response.setBufferSize(8192);
39         StringBuffer JavaDoc sb = new StringBuffer JavaDoc();
40         response.setContentType("text/plain");
41     PrintWriter writer = response.getWriter();
42
43         // Include our first subservlet
44
RequestDispatcher rd1 =
45           getServletContext().getRequestDispatcher("/Include04a");
46         if (rd1 == null) {
47             sb.append(" No RD for '/Include04a'/");
48         } else {
49             rd1.include(request, response);
50         }
51
52         // Forward to our second subservlet
53
RequestDispatcher rd2 =
54           getServletContext().getRequestDispatcher("/Include04b");
55         if (rd2 == null) {
56             sb.append("No RD for '/Include04b'/");
57         } else {
58           rd2.forward(request, response);
59         }
60
61         // Append error messages if necessary
62
if (sb.length() > 0) {
63             writer.print("Include04 FAILED -");
64             writer.println(sb.toString());
65         }
66
67         while (true) {
68             String JavaDoc message = StaticLogger.read();
69             if (message == null)
70                 break;
71             writer.println(message);
72         }
73         StaticLogger.reset();
74
75     }
76
77 }
78
Popular Tags