results = processCoverageRequest.execute();
System.out.println("WCPS: setting response mimetype to " + mime);
response.setContentType(mime);
System.out.println("WCPS: returning response");
webOut = response.getOutputStream();
webOut.write(results.get(0));
System.out.println("WCPS: done");
} catch (Exception e) {
printError(response, "Error: " + e.getMessage(), e);
} finally {
if (webOut != null) {
try {
webOut.close();
} catch (IOException e) {
}
}
}
}
public void destroy() {
super.destroy();
}
public String getServletInfo() {
return "Web Coverage Processing Service (Project PetaScope)";
}
private void printError(HttpServletResponse response, String message, Exception e)
throws IOException {
System.out.println("WCPS: error");
System.out.println("WCPS: setting response mimetype to text/html; charset=utf-8");
response.setContentType("text/html; charset=utf-8");
System.out.println("WCPS: returning the following error message");
e.printStackTrace(System.out);
System.out.println("WCPS: end of error message");
PrintWriter out = new PrintWriter(response.getOutputStream());
out.println(
"Web Coverage Processing Service");
out.println("An error has occured
");
out.println("" + message + "
");
out.println("Stack trace:
");
e.printStackTrace(out);
out.println("
");
out.close();
System.out.println("WCPS: done with error");
}
private void printUsage(HttpServletResponse response) throws IOException {
System.out.println("WCPS: setting response mimetype to text/html; charset=utf-8");
System.out.println("WCPS: returning usage message");
response.setContentType("text/html; charset=utf-8");
PrintWriter out = new PrintWriter(response.getOutputStream());
out.println(defaultHtmlResponse);
out.close();
System.out.println("WCPS: done nothing");
}
}