https://bz.apache.org/bugzilla/show_bug.cgi?id=63867
--- Comment #6 from Michael Osipov <micha...@apache.org> --- (In reply to Christopher Schultz from comment #5) > (In reply to Michael Osipov from comment #4) > > (In reply to Mark Thomas from comment #3) > > > I think I would be a good thing (long term) for a number of companies to > > > be > > > forced to go through a multi-million dollar hardware fix / replacement > > > program so that the next time a system like this is designed more thought > > > it > > > is given to the question "What happens when (not if) the client needs to > > > be > > > updated?". > > > > +1 > > So, I *completely* agree with this statement and it's sentiment, but, > honestly, this response is pretty hostile to the Tomcat community. If anyone > wants to know the answer to the question "why do people use Jetty instead of > Tomcat?" then this kind of the response is going to be a part of the answer. > > I honestly don't understand why this issue is so contentious. HTTP/2 does > not have reason phrases at all, and they are practically optional in > HTTP/1.1 because there are no requirements for their content > (https://tools.ietf.org/html/rfc7231#section-6.1). > > There is an interesting conversation about the reason phrase NOT being > resurrected in HTTP/2 here: https://github.com/http2/http2-spec/issues/202. > I find mnot's comment from 2018-02-04 to be the most compelling support for > dropping the reason phrase. > > But when it comes down to it, inclusion of reason phrases are NOT prohibited > by any version of HTTP/1.1 and some applications -- regardless of how > foolish it is to have done so -- are evidently dependent upon their presence. > > The servlet spec has both HttpServletResponse.setStatus(int,String) which > has been deprecated since spec 2.1 (release in 1998, so over 20 years ago) > and HttpServletResponse.sendError(int,String). The former method argues that > the usage of the "msg" parameter is ambiguous and suggests that #sendError > should be user instead, but then the docs for #sendError imply that the > "msg" parameter is used as the response *entity* and not as a reason phrase. > So, IMO, there is still plenty of ambiguity there. > > If sendError(int,String) does set a reason phrase, then NOT respecting the > application's attempts to set the reason phrase seems like a bug to me -- > excepting of course the case where h2 is the protocol, but again, that is > the application's choice. > > If Tomcat wants to omit reason phrases BY DEFAULT then I think that is > reasonable. But if an application calls response.setStatus(200, "Super > Duper") -- or response.sendError(200, "Super Duper") then I think it's > reasonable to expect that the response on the wire will actually include > that text. sendError() ia designed to deliver an HTML page, not the reason phrase. -- You are receiving this mail because: You are the assignee for the bug. --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org