X-Git-Url: http://jaekl.net/gitweb/?p=frank.git;a=blobdiff_plain;f=prod%2Fnet%2Fjaekl%2Ffrank%2FViewSchedule.java;fp=prod%2Fnet%2Fjaekl%2Ffrank%2FViewSchedule.java;h=b13258b3a8ce66227652ee6880886823601528ce;hp=e044f70ba21fa8a47cdaccad421a9384a5ccc856;hb=60dc53edca9ae2bcd6703e02b26acd47ef3d61a8;hpb=418e4d229a8b607b022cfb867bb702bec1765d13 diff --git a/prod/net/jaekl/frank/ViewSchedule.java b/prod/net/jaekl/frank/ViewSchedule.java index e044f70..b13258b 100644 --- a/prod/net/jaekl/frank/ViewSchedule.java +++ b/prod/net/jaekl/frank/ViewSchedule.java @@ -1,9 +1,7 @@ package net.jaekl.frank; -import java.io.ByteArrayOutputStream; import java.io.FileInputStream; import java.io.IOException; -import java.io.PrintStream; import java.io.PrintWriter; import java.util.Locale; @@ -24,6 +22,12 @@ public class ViewSchedule extends HttpServlet { static final String ROUTE = "route"; static final String LANG = "lang"; + ErrorHandler m_errorHandler; + + public ViewSchedule() { + m_errorHandler = new ErrorHandler(); + } + int getParamInt(HttpServletRequest req, String paramName) { String valueStr = getParamString(req, paramName); try { @@ -88,38 +92,7 @@ public class ViewSchedule extends HttpServlet { } } catch (Throwable t) { - writeErrorPage(pw, t, locale); + m_errorHandler.writeErrorPage(pw, t, locale); } } - - void writeErrorPage(PrintWriter pw, Throwable t, Locale locale) { - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - PrintStream ps = new PrintStream(baos); - FrankBundle bundle = FrankBundle.getInst(locale); - - pw.println("
"); - - // Note that, if we cared about security, we would log this stack trace to a - // server log, and only report a cross-reference to the log file back to the - // end user's browser, to avoid potentially exposing internal info that we - // don't want to share. - // At least at this point, we don't care (that much), and trade off a - // potential information leak in favour of reducing our code complexity - // and the administrator's workload. - t.printStackTrace(ps); - String stackTrace = baos.toString(); - pw.println(stackTrace); - - pw.println(""); - pw.println(""); - } - - }