Michael-O <1983-01...@gmx.net> wrote:

>Hi,
>
>why does the ErrorReportValve trigger the report on this condition
>only?
>
> if ((statusCode < 400) || (response.getContentCount() > 0))
>            return;
>
>So, even if I do a reponse.setStatus(404), this valve is executed.
>According to the Javadoc: if setStatus is invoked [1], the response
>should be left untouched in constrast to the sendErroor method.
>Especially this sentence makes it clear "If this method is used to set
>an error code, then the container's error page mechanism will not be
>triggered. "
>
>Shouldn't that include a response.isError() check?
>
>[1]
>http://docs.oracle.com/javaee/6/api/javax/servlet/http/HttpServletResponse.html#setStatus%28int%29

Yep. This sort of thing drives me nuts with the Servlet spec. The document is 
mean to be definitive but isn't. Half the requirements are in the Javadoc and 
the Javadoc is no longer included in the specification (for no good reason) and 
the spec lead refuses to add it back in. You used to be able to search one doc 
for a phrase, method, class, whatever and find all the references. Now it is 
right pain to figure out what the expected behaviour is.

Raise a bugzilla entry for this one and it'll get looked at and (assuming there 
is a problem as there does appear to be from the fragment you quoted) it will 
get fixed.

Mark

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to