Description of problem: DefinePage.java throws away information from a POST. The patch is below but without it using bebop jsp with a POST causes no information to be submitted. [randyg@graebner intragroupe]$ diff -u intragroupe/src/com/arsdigita/bebop/jsp/DefinePage.java core-platform/src/com/arsdigita/bebop/jsp/DefinePage.java --- intragroupe/src/com/arsdigita/bebop/jsp/DefinePage.java Wed Sep 10 11:16:56 2003 +++ core-platform/src/com/arsdigita/bebop/jsp/DefinePage.java Wed Sep 10 11:17:41 2003 @@ -175,12 +175,6 @@ HttpServletResponse resp = (HttpServletResponse)pageContext.getResponse(); - String rct = null; - if (req.getMethod().toUpperCase().equals("POST") - && ((rct = req.getContentType()) != null) - && (rct.toLowerCase().startsWith("multipart"))) { - req = DispatcherHelper.restoreRequestWrapper(req); - } Document doc; PageState state; Version-Release number of selected component (if applicable): 6.0 How reproducible: Steps to Reproduce: 1. 2. 3. Actual results: Expected results: Additional info:
NB, now we've moved to Servlet 2.3 for Rickshaw we should make MultipartHttpServletRequest subclass HttpServletRequestWrapper. This will let us forward onto other servlets without having to first unwrap our requests. Thus a whole heap of dodgy code in DispatcherHelper, BaseDispatcherServlet, etc will go away. From API docs for RequestDispatcher#forward <quote> The request and response parameters must be either the same objects as were passed to the calling servlet's service method or be subclasses of the ServletRequestWrapper or ServletResponseWrapper classes that wrap them. </quote>
this patch has been integrated onto 6.0 branch (@37048) and trunk (@37047). Dan's suggestion has not yet been implemented, so this bug is moving to the Rickshaw tracker ticket from the troika errata tracker.
appplied to 5.2.x before 5.2.2 release (@39082)