ICEfaces
  1. ICEfaces
  2. ICE-10178

ace:submenu - Add an action/actionListener or ajax event

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: EE-3.3.0.GA_P02, 4.0
    • Fix Version/s: EE-4.0.0.GA, EE-3.3.0.GA_P03, 4.1
    • Component/s: ACE-Components
    • Labels:
      None
    • Environment:
      All

      Description

      Feature Request: Add an action/actionListener or an ajax event that can be called when a submenu parent menu item is clicked/selected. Currently the ace:menuItem can call an action/actionListener but this can't be used as a parent menu.

        Activity

        Arran Mccullough created issue -
        Arran Mccullough made changes -
        Field Original Value New Value
        Support Case References Support Case #12986 - https://icesoft.my.salesforce.com/5007000000fGEZ8 support Case #12989 - hhttps://icesoft.my.salesforce.com/5007000000kxFTq
        Arran Mccullough made changes -
        Support Case References support Case #12989 - hhttps://icesoft.my.salesforce.com/5007000000kxFTq Support Case #12989 - hhttps://icesoft.my.salesforce.com/5007000000kxFTq
        Ken Fyten made changes -
        Assignee Arturo Zambrano [ artzambrano ]
        Fix Version/s EE-4.0.0.GA [ 11171 ]
        Assignee Priority P2 [ 10011 ]
        Ken Fyten made changes -
        Summary ace:submenu - Add an action/actionListner or ajax event ace:submenu - Add an action/actionListener or ajax event
        Ken Fyten made changes -
        Assignee Priority P2 [ 10011 ] P1 [ 10010 ]
        Arran Mccullough made changes -
        Fix Version/s EE-3.3.0.GA_P03 [ 11572 ]
        Hide
        Arturo Zambrano added a comment - - edited

        Do we want this to fire as well when the submenu is opened by simply hovering over it?

        Do we want to add a custom onClick attribute as well (just like ace:menuItem)?

        Show
        Arturo Zambrano added a comment - - edited Do we want this to fire as well when the submenu is opened by simply hovering over it? Do we want to add a custom onClick attribute as well (just like ace:menuItem)?
        Ken Fyten made changes -
        Affects Documentation (User Guide, Ref. Guide, etc.) [ 10003 ]
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #43598 Tue Nov 25 13:18:39 MST 2014 art.zambrano ICE-10178 added actionListener, 'action' ajax event, and onclick attribute to ace:submenu
        Files Changed
        Commit graph MODIFY /icefaces4/trunk/icefaces/ace/component/src/org/icefaces/ace/component/submenu/Submenu.java
        Commit graph MODIFY /icefaces4/trunk/icefaces/ace/component/src/org/icefaces/ace/component/submenu/SubmenuMeta.java
        Commit graph MODIFY /icefaces4/trunk/icefaces/ace/component/src/org/icefaces/ace/component/menu/MenuRenderer.java
        Commit graph MODIFY /icefaces4/trunk/icefaces/ace/component/src/org/icefaces/ace/component/menubar/MenuBarRenderer.java
        Commit graph MODIFY /icefaces4/trunk/icefaces/ace/component/src/org/icefaces/ace/component/contextmenu/ContextMenuRenderer.java
        Hide
        Arturo Zambrano added a comment -

        Committed improvement to 3.3 EE maintenance branch at revision 43597 and to 4.0 trunk at revision 43598. Added actionListener, ajax event, and onclick attribute to ace:submenu.

        Testing Notes: These features are meant to be activated only when clicking on the submenu labels (i.e. not when hovering). Note that the ajax event name is 'activate' in 3.3 and 'action' in 4.0.

        Show
        Arturo Zambrano added a comment - Committed improvement to 3.3 EE maintenance branch at revision 43597 and to 4.0 trunk at revision 43598. Added actionListener, ajax event, and onclick attribute to ace:submenu. Testing Notes: These features are meant to be activated only when clicking on the submenu labels (i.e. not when hovering). Note that the ajax event name is 'activate' in 3.3 and 'action' in 4.0.
        Arturo Zambrano made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Hide
        Carmen Cristurean added a comment -

        New ace:submenu ajax tests have been added to ace:menu QA test application, test page: /menuAjax.jsf.

        Menu QA Test app for IF4 trunk:
        http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Nightly/menu
        Menu QA test app for EE-3.3-maintenance:
        http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces2/Sparkle/Nightly/menu

        Show
        Carmen Cristurean added a comment - New ace:submenu ajax tests have been added to ace:menu QA test application, test page: /menuAjax.jsf. Menu QA Test app for IF4 trunk: http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Nightly/menu Menu QA test app for EE-3.3-maintenance: http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces2/Sparkle/Nightly/menu
        Hide
        Carmen Cristurean added a comment -

        Re-opening because of these failures:

        1) These Ajax tests fail on both IF4 trunk & EE-3.3-maintenance:
        Submenu ActionListener attribute only
        Submenu Action attribute only

        2) The following submenu ajax tests cause server errors (NullPointerException) on IF4 trunk (not an issue on EE-3.3-mainetnance where they pass):
        Submenu "action" Event Test (Default render/execute)
        Submenu "action" Event Test (execute=@all render=@all)
        Submenu Default Event Test (execute=@all render=@all)
        Submenu "action" Event Test w/ ActionListener attribute (Default execute/render)
        Submenu "action" Event Test w/ Action attribute (Default execute/render)
        Submenu "action" Event Test w/ Ajax Disabled (execute=@all render=@all)

        java.lang.NullPointerException
        org.icefaces.ace.component.submenu.Submenu.getScript(Submenu.java:90)
        org.icefaces.ace.component.menu.MenuRenderer.encodePlainSubmenu(MenuRenderer.java:296)
        org.icefaces.ace.component.menu.MenuRenderer.encodePlainMenuContent(MenuRenderer.java:257)
        org.icefaces.ace.component.menu.MenuRenderer.encodeMarkup(MenuRenderer.java:154)
        org.icefaces.ace.component.menu.MenuRenderer.encodeEnd(MenuRenderer.java:57)
        javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
        javax.faces.component.UIComponent.encodeAll(UIComponent.java:1863)
        javax.faces.render.Renderer.encodeChildren(Renderer.java:176)
        org.icefaces.impl.renderkit.RendererWrapper.encodeChildren(RendererWrapper.java:49)
        javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:889)
        com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:304)
        com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:114)
        javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:889)
        javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856)
        javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859)
        javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859)
        com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:456)
        com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:133)
        javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
        com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
        com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
        com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
        javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)

        Show
        Carmen Cristurean added a comment - Re-opening because of these failures: 1) These Ajax tests fail on both IF4 trunk & EE-3.3-maintenance: Submenu ActionListener attribute only Submenu Action attribute only 2) The following submenu ajax tests cause server errors (NullPointerException) on IF4 trunk (not an issue on EE-3.3-mainetnance where they pass): Submenu "action" Event Test (Default render/execute) Submenu "action" Event Test (execute=@all render=@all) Submenu Default Event Test (execute=@all render=@all) Submenu "action" Event Test w/ ActionListener attribute (Default execute/render) Submenu "action" Event Test w/ Action attribute (Default execute/render) Submenu "action" Event Test w/ Ajax Disabled (execute=@all render=@all) java.lang.NullPointerException org.icefaces.ace.component.submenu.Submenu.getScript(Submenu.java:90) org.icefaces.ace.component.menu.MenuRenderer.encodePlainSubmenu(MenuRenderer.java:296) org.icefaces.ace.component.menu.MenuRenderer.encodePlainMenuContent(MenuRenderer.java:257) org.icefaces.ace.component.menu.MenuRenderer.encodeMarkup(MenuRenderer.java:154) org.icefaces.ace.component.menu.MenuRenderer.encodeEnd(MenuRenderer.java:57) javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919) javax.faces.component.UIComponent.encodeAll(UIComponent.java:1863) javax.faces.render.Renderer.encodeChildren(Renderer.java:176) org.icefaces.impl.renderkit.RendererWrapper.encodeChildren(RendererWrapper.java:49) javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:889) com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:304) com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:114) javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:889) javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856) javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859) javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859) com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:456) com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:133) javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337) com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120) com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101) com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219) javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
        Carmen Cristurean made changes -
        Resolution Fixed [ 1 ]
        Status Resolved [ 5 ] Reopened [ 4 ]
        Hide
        Carmen Cristurean added a comment - - edited

        New ajax submenu tests have been added to ace:menuBar and ace:contextMenu QA test apps.
        Testing results:
        EE-3.3.0-maintenance branch r43606: all tests pass.
        IF4 trunk r 43616: ajax tests fail because of the same NullPointerException.

        Show
        Carmen Cristurean added a comment - - edited New ajax submenu tests have been added to ace:menuBar and ace:contextMenu QA test apps. Testing results: EE-3.3.0-maintenance branch r43606: all tests pass. IF4 trunk r 43616: ajax tests fail because of the same NullPointerException.
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #43634 Tue Dec 02 11:46:55 MST 2014 art.zambrano ICE-10178 fix for exception and for action/actionListener
        Files Changed
        Commit graph MODIFY /icefaces4/trunk/icefaces/ace/component/src/org/icefaces/ace/component/submenu/Submenu.java
        Hide
        Arturo Zambrano added a comment -

        Committed fixes for exceptions and for action/actionListener at revisions 43634 and 43535.

        Show
        Arturo Zambrano added a comment - Committed fixes for exceptions and for action/actionListener at revisions 43634 and 43535.
        Arturo Zambrano made changes -
        Status Reopened [ 4 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Hide
        Carmen Cristurean added a comment -

        Verified with IF4 trunk / EE-3.3 r43636 in IE10, CHrome39, FF34: all ajax submenu tests for ace:menu/menuBar/contextMenu pass.

        Show
        Carmen Cristurean added a comment - Verified with IF4 trunk / EE-3.3 r43636 in IE10, CHrome39, FF34: all ajax submenu tests for ace:menu/menuBar/contextMenu pass.
        Ken Fyten made changes -
        Fix Version/s 4.1 [ 11375 ]
        Ken Fyten made changes -
        Status Resolved [ 5 ] Closed [ 6 ]

          People

          • Assignee:
            Arturo Zambrano
            Reporter:
            Arran Mccullough
          • Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: