Uploaded image for project: 'Struts 1'
  1. Struts 1
  2. STR-3156

org.apache.struts.tiles.UrlController should unwrap the http request from MultipartRequestWrapper

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 1.1.1
    • Fix Version/s: None
    • Component/s: Core
    • Labels:
      None
    • Environment:
      weblogic application server.
    • Flags:
      Patch

      Description

      We are using struts 1.1 with tiles for our web application. During file upload, as the http request is wrapped as a MultipartRequestWrapper object , the org.apache.struts.tiles.UrlController throws ClassCastException at line requestDispatcher.include(...) [ in perform() method ]

      On changing the UrlController class to include the following lines , the exception disappers.
      // Unwrap the multipart request, if there is one.
      if (request instanceof MultipartRequestWrapper)

      { request = ((MultipartRequestWrapper) request).getRequest(); }

      this fix was done in RequestProcessor , but didnt make it to the UrlController class.

      Exception stack trace :

      java.lang.ClassCastException: org.apache.struts.upload.MultipartRequestWrapper
      at weblogic.servlet.internal.ServletRequestImpl.getOriginalRequest(ServletRequestImpl.java:1313)
      at weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:328)
      at org.apache.struts.tiles.UrlController.perform(UrlController.java:111)
      at org.apache.struts.tiles.TilesRequestProcessor.processTilesDefinition(TilesRequestProcessor.java:243)
      at org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:309)
      at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279)
      at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
      at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              mousami mousami bhattacharya
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated: