KickJava   Java API By Example, From Geeks To Geeks.

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


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  * Exercise basic forwarding functionality.
26  *
27  * @author Craig R. McClanahan
28  * @version $Revision: 1.2 $ $Date: 2004/02/27 14:58:56 $
29  */

30
31 public class Forward00 extends HttpServlet {
32
33
34     public void doGet(HttpServletRequest request, HttpServletResponse response)
35         throws IOException, ServletException {
36
37         // Prepare this response
38
StringBuffer JavaDoc sb = new StringBuffer JavaDoc();
39         response.setContentType("text/plain");
40     PrintWriter writer = response.getWriter();
41
42         // Acquire the path to which we will issue a forward
43
String JavaDoc path = request.getParameter("path");
44         if (path == null)
45             path = "/Forward00a";
46
47         // Create a request dispatcher and call forward() on it
48
RequestDispatcher rd = null;
49         if (path.startsWith("!"))
50             rd = getServletContext().getNamedDispatcher(path.substring(1));
51         else
52             rd = getServletContext().getRequestDispatcher(path);
53         if (rd == null) {
54             sb.append(" No RequestDispatcher returned/");
55         } else {
56             if (sb.length() < 1)
57                 rd.forward(request, response);
58         }
59
60         // Write our response if an error occurred
61
if (sb.length() >= 1) {
62             writer.print("Forward00 FAILED -");
63             writer.println(sb.toString());
64             while (true) {
65                 String JavaDoc message = StaticLogger.read();
66                 if (message == null)
67                     break;
68                 writer.println(message);
69             }
70         }
71         StaticLogger.reset();
72
73     }
74
75 }
76
Popular Tags