On 26/07/2018 13:46, Assia Djambazova wrote:
Hello,I noticed that when using HttpServletResponse.sendError in Tomcat 7.0.90 with string message the message is no longer shown as the response is displayed. I reproduce this with request to simple servlet: * public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR, "TEST ERROR MESSAGE"); }* The result in the browser is different: In Tomcat 7.0.90 HTTP Status 500 ? Internal Server Error
That question mark doesn't look right. I don't see it when I test this locally.
In Tomcat 7.0.88 HTTP Status 500 - TEST ERROR MESSAGE I think that this change is the cause [1]
Correct.
However, this change looks incompatible with servlet spec and breaks our integration tests. It seems to me from the spec [2] that the message should be displayed: *The server defaults to creating the response to look like an HTML-formatted server error page containing the specified message, setting the content type to "text/html"*
This is not a spec compliance issue. The ErrorReportValve is an optional component that is not enabled by default.
(And the default settings of the ErrorReportValve) are spec compliant.)
I use the ErrorReportValve and showReport is set to false.
Set showReport to true.
Reading [3] doesn't clarify if error message is part of the error report or not and if it should be displayed.
It is implied but it could be clearer. Mark --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
