Uploaded image for project: 'Pluto'
  1. Pluto
  2. PLUTO-332

PortletContextManager.remove(InternalPortletContext) fails

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.1.1
    • Fix Version/s: 1.1.2
    • Component/s: portlet container
    • Labels:
      None

      Description

      The destroy() method of the PortletServlet throws an exception when shutting down the container:

      ERROR [ContainerBackgroundProcessor[StandardEngine[Catalina]]] [localhost].[/uP3] Mar/05 14:44:41.832 - Servlet GenericXsltPortlet threw unload() exception
      javax.servlet.ServletException: Servlet.destroy() for servlet GenericXsltPortlet threw exception
      at org.apache.catalina.core.StandardWrapper.unload(StandardWrapper.java:1339)
      at org.apache.catalina.core.StandardWrapper.stop(StandardWrapper.java:1654)
      at org.apache.catalina.core.StandardContext.stop(StandardContext.java:4345)
      at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1081)
      at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1187)
      at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:292)
      at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
      at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1305)
      at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1569)
      at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1578)
      at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1558)
      at java.lang.Thread.run(Thread.java:595)

      Tracing the code execution this is tracked to the PortletContextManager.remove(InternalPortletContext) call in which a Map keySet Iterator is used but remove() is called on the Map. Instead of calling remove() on the Map it should be called on the Iterator in use to prevent the ConcurrentModificationException.

        Activity

        Hide
        ddewolf David DeWolf added a comment -

        Fixed

        Show
        ddewolf David DeWolf added a comment - Fixed
        Hide
        ddewolf David DeWolf added a comment -

        Since this is on shutdown, I don't consider it a blocker for 1.1.1 and I will leave the vote open. I will follow up with a 1.1.2 shortly however.

        Show
        ddewolf David DeWolf added a comment - Since this is on shutdown, I don't consider it a blocker for 1.1.1 and I will leave the vote open. I will follow up with a 1.1.2 shortly however.

          People

          • Assignee:
            ddewolf David DeWolf
            Reporter:
            edalquist Eric Dalquist
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development