WriteStream ws = null;
try {
Path path = getPath(request);
QuercusPage page;
try {
page = getQuercus().parse(path);
}
catch (FileNotFoundException ex) {
// php/2001
log.log(Level.FINER, ex.toString(), ex);
response.sendError(HttpServletResponse.SC_NOT_FOUND);
return;
}
ws = openWrite(response);
// php/6006
ws.setNewlineString("\n");
QuercusContext quercus = getQuercus();
env = quercus.createEnv(page, ws, request, response);
quercus.setServletContext(_servletContext);
try {
env.start();
// php/2030, php/2032, php/2033
// Jetty hides server classes from web-app
// http://docs.codehaus.org/display/JETTY/Classloading
//
// env.setGlobalValue("request", env.wrapJava(request));
// env.setGlobalValue("response", env.wrapJava(response));
// env.setGlobalValue("servletContext", env.wrapJava(_servletContext));
StringValue prepend
= quercus.getIniValue("auto_prepend_file").toStringValue(env);
if (prepend.length() > 0) {
Path prependPath = env.lookup(prepend);
if (prependPath == null)
env.error(L.l("auto_prepend_file '{0}' not found.", prepend));
else {
QuercusPage prependPage = getQuercus().parse(prependPath);
prependPage.executeTop(env);
}
}
env.executeTop();
StringValue append
= quercus.getIniValue("auto_append_file").toStringValue(env);
if (append.length() > 0) {
Path appendPath = env.lookup(append);
if (appendPath == null)
env.error(L.l("auto_append_file '{0}' not found.", append));
else {
QuercusPage appendPage = getQuercus().parse(appendPath);
appendPage.executeTop(env);
}
}
// return;
}
catch (QuercusExitException e) {