diff options
Diffstat (limited to 'subsonic-main/src/main/webapp/error.jsp')
-rw-r--r-- | subsonic-main/src/main/webapp/error.jsp | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/subsonic-main/src/main/webapp/error.jsp b/subsonic-main/src/main/webapp/error.jsp new file mode 100644 index 00000000..39d38a53 --- /dev/null +++ b/subsonic-main/src/main/webapp/error.jsp @@ -0,0 +1,48 @@ +<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="iso-8859-1" isErrorPage="true" %>
+<%@ page import="java.io.*"%>
+
+<html><head>
+ <!--[if lt IE 7.]>
+ <script defer type="text/javascript" src="script/pngfix.js"></script>
+ <![endif]-->
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+ <link rel="stylesheet" href="style/default.css" type="text/css"/>
+</head>
+
+<body>
+<h1><img src="icons/error.png" alt=""/> Error</h1>
+
+<p>
+ Subsonic encountered an internal error. You can report this error in the
+ <a href="http://forum.subsonic.org" target="_blank">Subsonic Forum</a>.
+ Please include the information below.
+</p>
+
+<%
+ StringWriter sw = new StringWriter();
+ exception.printStackTrace(new PrintWriter(sw));
+
+ long totalMemory = Runtime.getRuntime().totalMemory();
+ long freeMemory = Runtime.getRuntime().freeMemory();
+ long usedMemory = totalMemory - freeMemory;
+%>
+
+<table class="ruleTable indent">
+ <tr><td class="ruleTableHeader">Exception</td>
+ <td class="ruleTableCell"><%=exception.getClass().getName()%></td></tr>
+ <tr><td class="ruleTableHeader">Message</td>
+ <td class="ruleTableCell"><%=exception.getMessage()%></td></tr>
+ <tr><td class="ruleTableHeader">Java version</td>
+ <td class="ruleTableCell"><%=System.getProperty("java.vendor") + ' ' + System.getProperty("java.version")%></td></tr>
+ <tr><td class="ruleTableHeader">Operating system</td>
+ <td class="ruleTableCell"><%=System.getProperty("os.name") + ' ' + System.getProperty("os.version")%></td></tr>
+ <tr><td class="ruleTableHeader">Server</td>
+ <td class="ruleTableCell"><%=application.getServerInfo()%></td></tr>
+ <tr><td class="ruleTableHeader">Memory</td>
+ <td class="ruleTableCell">Used <%=usedMemory/1024L/1024L%> of <%=totalMemory/1024L/1024L%> MB</td></tr>
+ <tr><td class="ruleTableHeader" style="vertical-align:top;">Stack trace</td>
+ <td class="ruleTableCell" style="white-space:pre"><%=sw.getBuffer()%></td></tr>
+</table>
+
+</body>
+</html>
|