ovidiu 01/12/16 23:03:51
Modified: scratchpad/schecoon/src/org/apache/cocoon/scheme/servlet
REPLServlet.java
Log:
Use the new interpreters pool. Modified the API to handle the internal
SISC changes.
Revision Changes Path
1.3 +28 -1
xml-cocoon2/scratchpad/schecoon/src/org/apache/cocoon/scheme/servlet/REPLServlet.java
Index: REPLServlet.java
===================================================================
RCS file:
/home/cvs/xml-cocoon2/scratchpad/schecoon/src/org/apache/cocoon/scheme/servlet/REPLServlet.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- REPLServlet.java 2001/12/12 17:34:00 1.2
+++ REPLServlet.java 2001/12/17 07:03:51 1.3
@@ -2,6 +2,14 @@
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
+import javax.servlet.http.HttpServletRequest;
+import sisc.Interpreter;
+import sisc.data.Expression;
+import sisc.data.ImmutableString;
+import sisc.data.Procedure;
+import sisc.data.Value;
+import sisc.exprs.AppExp;
+import sisc.modules.J2S;
/**
* The entry point in the system. This servlet drives the processing
@@ -14,6 +22,25 @@
{
public void service(ServletRequest request, ServletResponse response)
{
- System.out.println(eval(mainExpression, request, response));
+ try {
+ J2S.JavaObject sreq = new J2S.JavaObject(request);
+ J2S.JavaObject sresp = new J2S.JavaObject(response);
+
+ ImmutableString servletPath
+ = new ImmutableString(((HttpServletRequest)request).getServletPath());
+ Interpreter interp = getInterpreter();
+ Value[] args = new Value[] {servletPath, sreq, sresp};
+ try {
+ interp.eval((Procedure)interp.ctx.toplevel_env.lookup(mainFunction),
+ args);
+ }
+ finally {
+ releaseInterpreter(interp);
+ }
+ }
+ catch (Exception ex) {
+ System.out.println("evaluation error: " + ex);
+ ex.printStackTrace();
+ }
}
}
----------------------------------------------------------------------
In case of troubles, e-mail: [EMAIL PROTECTED]
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]