KickJava   Java API By Example, From Geeks To Geeks.

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


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 java.lang.reflect.*;
22 import java.util.*;
23 import javax.servlet.*;
24 import javax.servlet.http.*;
25
26
27 /**
28  * Verify that request and response wrappers added by a Filter are in fact
29  * visible to the called servlet.
30  *
31  * @author Craig R. McClanahan
32  * @version $Revision: 1.2 $ $Date: 2004/02/27 14:58:56 $
33  */

34
35 public class FilterRequest02 extends HttpServlet {
36
37     public void service(HttpServletRequest request,
38                         HttpServletResponse response)
39         throws IOException, ServletException {
40
41         response.setContentType("text/plain");
42         PrintWriter writer = response.getWriter();
43
44         String JavaDoc dispatch = request.getParameter("dispatch");
45         if ("F".equals(dispatch)) {
46             RequestDispatcher rd =
47                 getServletContext().getRequestDispatcher("/FilterRequest02a");
48             if (rd == null)
49                 writer.println("FilterRequest02 FAILED - No forward request dispatcher");
50             else
51                 rd.forward(request, response);
52         } else if ("I".equals(dispatch)) {
53             RequestDispatcher rd =
54                 getServletContext().getRequestDispatcher("/FilterRequest02a");
55             if (rd == null)
56                 writer.println("FilterRequest02 FAILED - No include request dispatcher");
57             else
58                 rd.include(request, response);
59         } else {
60             String JavaDoc wrap = request.getParameter("wrap");
61             if ("false".equals(wrap)) {
62                 if (request instanceof TesterHttpServletRequestWrapper)
63                     writer.println("FilterRequest02 FAILED - Request was wrapped");
64                 else
65                     writer.println("FilterRequest02 PASSED");
66             } else if ("/WrappedFilterRequest02".equals(request.getServletPath())) {
67                 if (request instanceof TesterHttpServletRequestWrapper)
68                     writer.println("FilterRequest02 PASSED");
69                 else
70                     writer.println("FilterRequest02 FAILED - Wrapper class is "
71                                    + request.getClass().getName());
72             }
73         }
74
75         while (true) {
76             String JavaDoc message = StaticLogger.read();
77             if (message == null)
78                 break;
79             writer.println(message);
80         }
81         StaticLogger.reset();
82
83     }
84
85 }
86
Popular Tags