ICEfaces
  1. ICEfaces
  2. ICE-7638

Add ace:submenu support to ace:contextMenu

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 3.0.RC1
    • Fix Version/s: EE-3.0.0.BETA, 3.0.1
    • Component/s: ACE-Components
    • Labels:
      None
    • Environment:
      Tomcat 7.0.12
    • Affects:
      Documentation (User Guide, Ref. Guide, etc.)

      Description

      When adding a static or dynamic ace:submenu to the ace:contextMenu the following exception is thrown:

      java.lang.ClassCastException: org.icefaces.ace.component.submenu.Submenu cannot be cast to org.icefaces.ace.component.menuitem.MenuItem
      org.icefaces.ace.component.contextmenu.ContextMenuRenderer.encodeMarkup(ContextMenuRenderer.java:94)
      org.icefaces.ace.component.menu.BaseMenuRenderer.encodeEnd(BaseMenuRenderer.java:59)
      javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:875)
      javax.faces.component.UIComponent.encodeAll(UIComponent.java:1764)
      javax.faces.render.Renderer.encodeChildren(Renderer.java:168)
      org.icefaces.impl.renderkit.RendererWrapper.encodeChildren(RendererWrapper.java:54)
      javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:845)
      com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:304)
      com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:105)
      javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:845)
      org.icefaces.ace.renderkit.CoreRenderer.renderChild(CoreRenderer.java:75)
      org.icefaces.ace.renderkit.CoreRenderer.renderChildren(CoreRenderer.java:63)
      org.icefaces.ace.component.panel.PanelRenderer.encodeContent(PanelRenderer.java:208)
      org.icefaces.ace.component.panel.PanelRenderer.encodeMarkup(PanelRenderer.java:131)
      org.icefaces.ace.component.panel.PanelRenderer.encodeEnd(PanelRenderer.java:71)
      javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:875)
      javax.faces.component.UIComponent.encodeAll(UIComponent.java:1764)
      javax.faces.component.UIComponent.encodeAll(UIComponent.java:1760)
      javax.faces.component.UIComponent.encodeAll(UIComponent.java:1760)
      com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:401)
      com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
      com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:121)
      com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
      com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
      javax.faces.webapp.FacesServlet.service(FacesServlet.java:594)

      The ace:contextMenu should support ace:submenu in the same was as ace:menu does, so the same menus/menu models can be used with both components.

        Activity

          People

          • Assignee:
            Arturo Zambrano
            Reporter:
            Brad Kroeger
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: