while it's documented that the styling will be lost when both settings for ServerReport/ServerInfo are set to false... eg by adding this to server.xml:
<Valve className="org.apache.catalina.valves.ErrorReportValve" showReport=false" showServerInfo="false" /> (and I confirmed this recently) from looking at the source for ErrorReportValve for tomcat 7.0.78 it LOOKS like this would be easy to fix: (however, I'm neither a tomcat/java/HTML or CSS expert, so there may be very good reasons this is done this way): currently: StringBuilder sb = new StringBuilder(); sb.append("<html><head>"); if(showServerInfo || showReport){ sb.append("<title>"); if(showServerInfo) { sb.append(ServerInfo.getServerInfo()).append(" - "); } sb.append(smClient.getString("errorReportValve.errorReport")); sb.append("</title>"); sb.append("<style><!--"); sb.append(org.apache.catalina.util.TomcatCSS.TOMCAT_CSS); sb.append("--></style> "); } else { sb.append("<title>"); sb.append(smClient.getString("errorReportValve.errorReport")); sb.append("</title>"); } sb.append("</head><body>"); .... it looks to me like simply moving the three lines for style/css/style outside the If statement would fix this, like so: StringBuilder sb = new StringBuilder(); sb.append("<html><head>"); if(showServerInfo || showReport){ sb.append("<title>"); if(showServerInfo) { sb.append(ServerInfo.getServerInfo()).append(" - "); } sb.append(smClient.getString("errorReportValve.errorReport")); sb.append("</title>"); } else { sb.append("<title>"); sb.append(smClient.getString("errorReportValve.errorReport")); sb.append("</title>"); } // move style lines outside of if(showServerInfo || showReport){ section... above sb.append("<style><!--"); sb.append(org.apache.catalina.util.TomcatCSS.TOMCAT_CSS); sb.append("--></style> "); sb.append("</head><body>"); ... or am I missing (or just ignorant of ) something? John Palmer