Improve some error handling to clean up the catalina log.
This commit is contained in:
parent
6aa29378e5
commit
ced99d7703
2 changed files with 20 additions and 7 deletions
|
@ -3,6 +3,7 @@
|
|||
package edu.cornell.mannlib.vitro.webapp.controller.api;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.OutputStreamWriter;
|
||||
import java.io.PrintWriter;
|
||||
import java.util.Collection;
|
||||
|
||||
|
@ -86,19 +87,29 @@ public class VitroApiServlet extends HttpServlet {
|
|||
protected void sendShortResponse(int statusCode, String message,
|
||||
HttpServletResponse resp) throws IOException {
|
||||
resp.setStatus(statusCode);
|
||||
PrintWriter writer = resp.getWriter();
|
||||
PrintWriter writer = getWriter(resp);
|
||||
writer.println("<H1>" + statusCode + " " + message + "</H1>");
|
||||
}
|
||||
|
||||
protected void sendShortResponse(int statusCode, String message,
|
||||
Throwable e, HttpServletResponse resp) throws IOException {
|
||||
log.warn("Unexpected exception: " + e, e);
|
||||
sendShortResponse(statusCode, message, resp);
|
||||
PrintWriter writer = resp.getWriter();
|
||||
PrintWriter writer = getWriter(resp);
|
||||
writer.println("<pre>");
|
||||
e.printStackTrace(writer);
|
||||
writer.println("</pre>");
|
||||
}
|
||||
|
||||
private PrintWriter getWriter(HttpServletResponse resp) throws IOException {
|
||||
try {
|
||||
return resp.getWriter();
|
||||
} catch (IllegalStateException e) {
|
||||
return new PrintWriter(new OutputStreamWriter(
|
||||
resp.getOutputStream()));
|
||||
}
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------------
|
||||
// Helper classes
|
||||
// ----------------------------------------------------------------------
|
||||
|
|
|
@ -117,13 +117,15 @@ public class FileServingServlet extends VitroHttpServlet {
|
|||
try {
|
||||
in.close();
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
log.warn("Serving " + request.getRequestURI()
|
||||
+ ". Failed to close input stream.", e);
|
||||
}
|
||||
if (out != null) {
|
||||
try {
|
||||
out.close();
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
log.warn("Serving " + request.getRequestURI()
|
||||
+ ". Failed to close output stream.", e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue