Я вижу странное поведение форварда RequestDispatcher
в Tomcat. Я упоминаю Tomcat, потому что точный код не создает проблемы на Jetty, поэтому он, вероятно, связан с реализацией сервлета.
Spring выполняет переадресацию существующего запроса / ответа - в этот момент ответ имеет http-код состояния 404; после форварда код 500.
Фактическая логика происходит в: InternalResourceView.renderMergedOutputModel
. В коде Spring действительно упоминается, что перенаправленный ресурс должен сам определять тип контента, но ничего не о переопределенном коде.
Я использую Spring 3.0.5 на JDK 6.0.26.