Geronimo
  1. Geronimo
  2. GERONIMO-3867

Export Plugin in Web Console results in NullPointerException if no component is selected

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.0.2, 2.1
    • Fix Version/s: 2.0.3, 2.1.1, 2.2
    • Component/s: None
    • Security Level: public (Regular issues)
    • Labels:
      None

      Description

      When attempting to export a component as a plugin in the web console a NPE is thrown is no component is selected (actually, a NPE is thrown even if a component is selected but that is another issue, GERONIMO-3866). We should check to validate that a component is selected in the JSP.

      16:19:37,170 ERROR [MultiPagePortlet] Unable to render portlet
      java.lang.NullPointerException
      at org.apache.geronimo.console.car.ExportConfigHandler.renderView(ExportConfigHandler.java:71)
      at org.apache.geronimo.console.MultiPagePortlet.doView(MultiPagePortlet.java:144)
      at javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:247)
      at javax.portlet.GenericPortlet.render(GenericPortlet.java:175)
      at org.apache.pluto.core.PortletServlet.dispatch(PortletServlet.java:208)
      at org.apache.pluto.core.PortletServlet.doGet(PortletServlet.java:139)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654)
      at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:557)
      at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:481)
      at org.apache.pluto.core.DefaultPortletInvokerService.invoke(DefaultPortletInvokerService.java:167)
      at org.apache.pluto.core.DefaultPortletInvokerService.render(DefaultPortletInvokerService.java:101)
      at org.apache.pluto.core.PortletContainerImpl.doRender(PortletContainerImpl.java:173)
      at org.apache.pluto.driver.tags.PortletTag.doStartTag(PortletTag.java:152)
      at jsp.WEB_002dINF.themes.portlet_002dskin_jsp._jspService(portlet_002dskin_jsp.java:87)
      at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654)
      at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:557)
      at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:481)
      at org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:968)
      at jsp.WEB_002dINF.themes.default_002dtheme_jsp._jspx_meth_c_005fforEach_005f0(default_002dtheme_jsp.java:196)
      at jsp.WEB_002dINF.themes.default_002dtheme_jsp._jspService(default_002dtheme_jsp.java:101)
      at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654)
      at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445)
      at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379)
      at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292)
      at org.apache.pluto.driver.PortalDriverServlet.doGet(PortalDriverServlet.java:142)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
      at org.apache.geronimo.tomcat.valve.DefaultSubjectValve.invoke(DefaultSubjectValve.java:56)
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
      at org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:396)
      at org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:47)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
      at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
      at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
      at java.lang.Thread.run(Thread.java:613)

        Activity

        Joe Bohn created issue -
        Joe Bohn made changes -
        Field Original Value New Value
        Summary Export Plugin in Web Console results in NullPointerException Export Plugin in Web Console results in NullPointerException if no component is selected
        Description When attempting to export a component as a plugin in the web console, a second screen is presented after the initial component is selected. It is at this point in time that a NullPointerException appears in the command console.

        16:19:37,170 ERROR [MultiPagePortlet] Unable to render portlet
        java.lang.NullPointerException
                at org.apache.geronimo.console.car.ExportConfigHandler.renderView(ExportConfigHandler.java:71)
                at org.apache.geronimo.console.MultiPagePortlet.doView(MultiPagePortlet.java:144)
                at javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:247)
                at javax.portlet.GenericPortlet.render(GenericPortlet.java:175)
                at org.apache.pluto.core.PortletServlet.dispatch(PortletServlet.java:208)
                at org.apache.pluto.core.PortletServlet.doGet(PortletServlet.java:139)
                at javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
                at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654)
                at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:557)
                at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:481)
                at org.apache.pluto.core.DefaultPortletInvokerService.invoke(DefaultPortletInvokerService.java:167)
                at org.apache.pluto.core.DefaultPortletInvokerService.render(DefaultPortletInvokerService.java:101)
                at org.apache.pluto.core.PortletContainerImpl.doRender(PortletContainerImpl.java:173)
                at org.apache.pluto.driver.tags.PortletTag.doStartTag(PortletTag.java:152)
                at jsp.WEB_002dINF.themes.portlet_002dskin_jsp._jspService(portlet_002dskin_jsp.java:87)
                at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
                at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654)
                at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:557)
                at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:481)
                at org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:968)
                at jsp.WEB_002dINF.themes.default_002dtheme_jsp._jspx_meth_c_005fforEach_005f0(default_002dtheme_jsp.java:196)
                at jsp.WEB_002dINF.themes.default_002dtheme_jsp._jspService(default_002dtheme_jsp.java:101)
                at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
                at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654)
                at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445)
                at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379)
                at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292)
                at org.apache.pluto.driver.PortalDriverServlet.doGet(PortalDriverServlet.java:142)
                at javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
                at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
                at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
                at org.apache.geronimo.tomcat.valve.DefaultSubjectValve.invoke(DefaultSubjectValve.java:56)
                at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
                at org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:396)
                at org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:47)
                at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
                at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
                at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
                at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563)
                at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
                at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
                at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
                at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
                at java.lang.Thread.run(Thread.java:613)
        When attempting to export a component as a plugin in the web console a NPE is thrown is no component is selected (actually, a NPE is thrown even if a component is selected but that is another issue, GERONIMO-3866). We should check to validate that a component is selected in the JSP.


        16:19:37,170 ERROR [MultiPagePortlet] Unable to render portlet
        java.lang.NullPointerException
                at org.apache.geronimo.console.car.ExportConfigHandler.renderView(ExportConfigHandler.java:71)
                at org.apache.geronimo.console.MultiPagePortlet.doView(MultiPagePortlet.java:144)
                at javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:247)
                at javax.portlet.GenericPortlet.render(GenericPortlet.java:175)
                at org.apache.pluto.core.PortletServlet.dispatch(PortletServlet.java:208)
                at org.apache.pluto.core.PortletServlet.doGet(PortletServlet.java:139)
                at javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
                at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654)
                at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:557)
                at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:481)
                at org.apache.pluto.core.DefaultPortletInvokerService.invoke(DefaultPortletInvokerService.java:167)
                at org.apache.pluto.core.DefaultPortletInvokerService.render(DefaultPortletInvokerService.java:101)
                at org.apache.pluto.core.PortletContainerImpl.doRender(PortletContainerImpl.java:173)
                at org.apache.pluto.driver.tags.PortletTag.doStartTag(PortletTag.java:152)
                at jsp.WEB_002dINF.themes.portlet_002dskin_jsp._jspService(portlet_002dskin_jsp.java:87)
                at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
                at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654)
                at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:557)
                at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:481)
                at org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:968)
                at jsp.WEB_002dINF.themes.default_002dtheme_jsp._jspx_meth_c_005fforEach_005f0(default_002dtheme_jsp.java:196)
                at jsp.WEB_002dINF.themes.default_002dtheme_jsp._jspService(default_002dtheme_jsp.java:101)
                at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
                at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654)
                at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445)
                at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379)
                at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292)
                at org.apache.pluto.driver.PortalDriverServlet.doGet(PortalDriverServlet.java:142)
                at javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
                at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
                at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
                at org.apache.geronimo.tomcat.valve.DefaultSubjectValve.invoke(DefaultSubjectValve.java:56)
                at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
                at org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:396)
                at org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:47)
                at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
                at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
                at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
                at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563)
                at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
                at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
                at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
                at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
                at java.lang.Thread.run(Thread.java:613)
        Hide
        Joseph Leong added a comment -

        Hi Joe,

        Any ideas as to which files you'll be modifying for this piece. I've been kind of tip toeing around the JIRA's i have open that are in the plugin installer because i didn't want to clash with your work. Or if we work concurrently, perhaps you'd like to review my patches so it doesn't clash with your designs?

        Thanks!

        -Joseph Leong

        Show
        Joseph Leong added a comment - Hi Joe, Any ideas as to which files you'll be modifying for this piece. I've been kind of tip toeing around the JIRA's i have open that are in the plugin installer because i didn't want to clash with your work. Or if we work concurrently, perhaps you'd like to review my patches so it doesn't clash with your designs? Thanks! -Joseph Leong
        Hide
        Joe Bohn added a comment -

        Joe,

        I just went ahead and integrated my changes for this in trunk (rev. 631628) and branches/2.1 (rev. 631634). I'll update branches/2.0 soon. The changes are minor for this issue ... just validate that something was selected. The related defect (https://issues.apache.org/jira/browse/GERONIMO-3866) will have more substantial changes when I get them figured out but they will be in the builder/repository areas rather than the UI so they shouldn't affect what you are working on.

        Joe Bohn

        Show
        Joe Bohn added a comment - Joe, I just went ahead and integrated my changes for this in trunk (rev. 631628) and branches/2.1 (rev. 631634). I'll update branches/2.0 soon. The changes are minor for this issue ... just validate that something was selected. The related defect ( https://issues.apache.org/jira/browse/GERONIMO-3866 ) will have more substantial changes when I get them figured out but they will be in the builder/repository areas rather than the UI so they shouldn't affect what you are working on. Joe Bohn
        Hide
        Joseph Leong added a comment -

        Great, thanks for the heads up Joe.

        I'll be resuming work then in this plugin-portlet section then - for your reference so i don't clash with your work you can refer to:
        GERONIMO-3781, GERONIMO-3856 and GERONIMO-3868 for updates.

        -Joseph Leong

        Show
        Joseph Leong added a comment - Great, thanks for the heads up Joe. I'll be resuming work then in this plugin-portlet section then - for your reference so i don't clash with your work you can refer to: GERONIMO-3781 , GERONIMO-3856 and GERONIMO-3868 for updates. -Joseph Leong
        Joe Bohn made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Fix Version/s 2.0.x [ 12312601 ]
        Fix Version/s 2.2 [ 12312965 ]
        Fix Version/s 2.1.1 [ 12312941 ]
        Resolution Fixed [ 1 ]
        Joe Bohn made changes -
        Affects Version/s 2.0.2 [ 12312731 ]
        Fix Version/s 2.0.3 [ 12313315 ]
        Fix Version/s 2.0.x [ 12312601 ]
        Hide
        Donald Woods added a comment -

        marking as closed

        Show
        Donald Woods added a comment - marking as closed
        Donald Woods made changes -
        Status Resolved [ 5 ] Closed [ 6 ]

          People

          • Assignee:
            Joe Bohn
            Reporter:
            Joe Bohn
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development