KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > kohsuke > stapler > jelly > JellyRequestDispatcher


1 package org.kohsuke.stapler.jelly;
2
3 import org.apache.commons.jelly.JellyTagException;
4 import org.apache.commons.jelly.Script;
5 import org.kohsuke.stapler.MetaClass;
6 import org.kohsuke.stapler.StaplerRequest;
7 import org.kohsuke.stapler.StaplerResponse;
8
9 import javax.servlet.RequestDispatcher JavaDoc;
10 import javax.servlet.ServletException JavaDoc;
11 import javax.servlet.ServletRequest JavaDoc;
12 import javax.servlet.ServletResponse JavaDoc;
13 import java.io.IOException JavaDoc;
14
15 /**
16  * @author Kohsuke Kawaguchi
17  */

18 final class JellyRequestDispatcher implements RequestDispatcher JavaDoc {
19     private final Object JavaDoc it;
20     private final Script script;
21
22     public JellyRequestDispatcher(Object JavaDoc it, Script script) {
23         this.it = it;
24         this.script = script;
25     }
26
27     public void forward(ServletRequest JavaDoc servletRequest, ServletResponse JavaDoc servletResponse) throws ServletException JavaDoc, IOException JavaDoc {
28         try {
29             MetaClass.get(it.getClass()).loadTearOff(JellyClassTearOff.class).invokeScript(
30                 (StaplerRequest)servletRequest,
31                 (StaplerResponse)servletResponse,
32                 script, it);
33         } catch (JellyTagException e) {
34             throw new ServletException JavaDoc(e);
35         }
36     }
37
38     public void include(ServletRequest JavaDoc servletRequest, ServletResponse JavaDoc servletResponse) throws ServletException JavaDoc, IOException JavaDoc {
39         forward(servletRequest,servletResponse);
40     }
41 }
42
Popular Tags