Ok, I know Tomcat 5.0.x is a really, really old servlet container and
that people with brains should have upgraded long back.

..but I keep an instance around that I fire up every now and then just
to test compatibility.

The other day I was testing Nexus, the excellent Maven repository
manager from Sonatype. On Tomcat 5.0.30, the front page failed to
display, I only got a blank page.

After a bit of digging around I that the blank page was because of
HTTP 301 redirects in Noelios engine didn't work on Tomcat 5.0.x

The reason is that Noelios adds a Content-Length header with a value
of "0" before adding other headers and eventually setting the status
code.

Setting the Content-Length to 0 on Tomcat 5.0.x effectively prevents
any other headers or status coded being set because the response is
considered to be committed according to the servlet spec.

I'll admit that supporting Tomcat 5.0.x is a small gain here, but then
fixing it shouldn't be all that hard either. Setting the
Content-length header after setting status code and adding all other
headers should work. Other containers might also have the same issue
since the spec isn't very clear on this.

I reported this in Sonatype's issue tracker, but they probably won't
be able to fix this unless it's fixed by you guys upstream.

https://issues.sonatype.org/browse/NEXUS-1303

Thanks,
Eirik.

------------------------------------------------------
http://restlet.tigris.org/ds/viewMessage.do?dsForumId=4447&dsMessageId=1006267

Reply via email to