Menu Model NavigationPaneRenderer _renderContent

Hello,
I have encountered a hiccup in menu model. JDeveloper 11.1.1.5.
My menu model can work.
Then, I enhanced hide/show based on security setting of resource grant to webpage
and the render of pages is set according to security setting.
However, the item menu under "root menu" does not appear.
The error message i got is:
<NavigationPaneRenderer> <_renderContent> Warning: There are no items to render for this level
//Menu Structure
<?xml version="1.0" encoding="windows-1252" ?>
<menu xmlns="http://myfaces.apache.org/trinidad/menu">
<groupNode id="itemNode_purchasing"
label="Purchasing"
idref="itemNode_purchasing_entry"
rendered="#{securityContext.regionViewable['security.view.pageDefs.purchasingPageDef']}"
visible="#{securityContext.regionViewable['security.view.pageDefs.purchasingPageDef']}">
<itemNode id="itemNode_purchasing_entry" label="Purchasing_entry"
action="adfMenu_purchasing_entry"
focusViewId="/purchasing_entry"
rendered="#{securityContext.regionViewable['security.view.pageDefs.purchasing_entryPageDef']}"
visible="#{securityContext.regionViewable['security.view.pageDefs.purchasing_entryPageDef']}"/>
<itemNode id="itemNode_purchasing_approval"
label="Purchasing_approval"
action="adfMenu_purchasing_approval"
focusViewId="/purchasing_approval"
rendered="#{securityContext.regionViewable['security.view.pageDefs.purchasing_approvalPageDef']}"
visible="#{securityContext.regionViewable['security.view.pageDefs.purchasing_approvalPageDef']}"/>
</groupNode>
</menu>
//Navigation Pane at TemplatePage
<af:navigationPane id="pt_np2" level="1" value="#{site_menu}"
var="menuItem" hint="tabs"
shortDesc="menuItemHere">
<f:facet name="nodeStamp">
<af:commandNavigationItem text="#{menuItem.label}" id="pt_cni2"
action="#{menuItem.doAction}"
rendered="#{menuItem.rendered} "
visible="#{menuItem.visible} "/>
</f:facet>
</af:navigationPane>
Is the something no right or bug?
Appreciate if someone could help.
glo

Hi,
I don't have a testcase, so just guessing
1. Did you check if the root menu item is listed as a page in teh ADF Security editor? Chances may be you don't have permission to access it
2. You use visible and rendered properties, which is not needed. If you choose rendered then the menu item is not rendered if you don't have access privileges. This also means that it cannot be PPR'ed for conditional show/hide. Using visible and set it to false based on the permission will hide the component but keep it as part of the JSF component tree. In your case visible has no effect because you set rendered to true/false
Frank

Similar Messages

  • ADF MENU MODEL disabled property!

    Hi! I have ADF menu model, see: http://my.jetscreenshot.com/2677/20121018-5go0-10kb Is it possible to set Disabled property tu true on FIRST groupNode element? When I set Disabled to true then my app gets error. By the way I can set disabled property to other group node elements without error.
    What to do?
    Best regards, Debuger!

    Error:
    Caused By: java.lang.NullPointerException
         at org.apache.myfaces.trinidadinternal.menu.GroupNode.getDestination(GroupNode.java:67)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at javax.el.BeanELResolver.getValue(BeanELResolver.java:261)
         at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:143)
         at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:72)
         at com.sun.el.parser.AstValue.getValue(AstValue.java:118)
         at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:192)
         at org.apache.myfaces.trinidad.bean.FacesBeanImpl.getProperty(FacesBeanImpl.java:68)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.getProperty(UIXComponentBase.java:1183)
         at oracle.adf.view.rich.component.rich.nav.RichCommandNavigationItem.getDestination(RichCommandNavigationItem.java:594)
         at oracle.adfinternal.view.faces.renderkit.rich.NavigationPaneRenderer$NavigationItem.<init>(NavigationPaneRenderer.java:1518)
         at oracle.adfinternal.view.faces.renderkit.rich.NavigationPaneRenderer$NavigationPane.addStampedNavigationItem(NavigationPaneRenderer.java:1217)
         at oracle.adfinternal.view.faces.renderkit.rich.NavigationPaneRenderer._createStampChildren(NavigationPaneRenderer.java:788)
         at oracle.adfinternal.view.faces.renderkit.rich.NavigationPaneRenderer._renderContent(NavigationPaneRenderer.java:366)
         at oracle.adfinternal.view.faces.renderkit.rich.NavigationPaneRenderer.encodeAll(NavigationPaneRenderer.java:285)
         at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1369)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:335)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:751)
         at org.apache.myfaces.trinidad.component.UIXCollection.encodeEnd(UIXCollection.java:527)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:415)
         at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:2572)
         at oracle.adfinternal.view.faces.renderkit.rich.DecorativeBoxRenderer.encodeFacet(DecorativeBoxRenderer.java:289)
         at oracle.adfinternal.view.faces.renderkit.rich.DecorativeBoxRenderer._encodeTopOrBottom(DecorativeBoxRenderer.java:739)
         at oracle.adfinternal.view.faces.renderkit.rich.DecorativeBoxRenderer.encodeAll(DecorativeBoxRenderer.java:249)
         at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1369)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:335)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:751)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:415)
         at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:2572)
         at oracle.adfinternal.view.faces.renderkit.rich.PanelStretchLayoutRenderer.encodeCenterFacet(PanelStretchLayoutRenderer.java:297)
         at oracle.adfinternal.view.faces.renderkit.rich.PanelStretchLayoutRenderer._encodeCenterPane(PanelStretchLayoutRenderer.java:575)
         at oracle.adfinternal.view.faces.renderkit.rich.PanelStretchLayoutRenderer.encodeAll(PanelStretchLayoutRenderer.java:241)
         at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1369)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:335)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:751)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:415)
         at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:2572)
         at oracle.adf.view.rich.render.RichRenderer.encodeStretchedChild(RichRenderer.java:1963)
         at oracle.adfinternal.view.faces.renderkit.rich.PanelSplitterRenderer._renderPane(PanelSplitterRenderer.java:1044)
         at oracle.adfinternal.view.faces.renderkit.rich.PanelSplitterRenderer._renderSecondPane(PanelSplitterRenderer.java:943)
         at oracle.adfinternal.view.faces.renderkit.rich.PanelSplitterRenderer.encodeAll(PanelSplitterRenderer.java:197)
         at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1369)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:335)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:751)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:415)
         at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:2572)
         at oracle.adfinternal.view.faces.renderkit.rich.DecorativeBoxRenderer.encodeFacet(DecorativeBoxRenderer.java:289)
         at oracle.adfinternal.view.faces.renderkit.rich.DecorativeBoxRenderer._encodeCenterPane(DecorativeBoxRenderer.java:442)
         at oracle.adfinternal.view.faces.renderkit.rich.DecorativeBoxRenderer.encodeAll(DecorativeBoxRenderer.java:258)
         at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1369)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:335)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:751)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:415)
         at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:2572)
         at oracle.adf.view.rich.render.RichRenderer.encodeStretchedChild(RichRenderer.java:1963)
         at oracle.adfinternal.view.faces.renderkit.rich.PanelSplitterRenderer._renderPane(PanelSplitterRenderer.java:1044)
         at oracle.adfinternal.view.faces.renderkit.rich.PanelSplitterRenderer._renderFirstPane(PanelSplitterRenderer.java:901)
         at oracle.adfinternal.view.faces.renderkit.rich.PanelSplitterRenderer.encodeAll(PanelSplitterRenderer.java:185)
         at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1369)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:335)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:751)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:415)
         at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:2572)
         at oracle.adfinternal.view.faces.renderkit.rich.PanelStretchLayoutRenderer.encodeCenterFacet(PanelStretchLayoutRenderer.java:297)
         at oracle.adfinternal.view.faces.renderkit.rich.PanelStretchLayoutRenderer._encodeCenterPane(PanelStretchLayoutRenderer.java:575)
         at oracle.adfinternal.view.faces.renderkit.rich.PanelStretchLayoutRenderer.encodeAll(PanelStretchLayoutRenderer.java:241)
         at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1369)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:335)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:751)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:415)
         at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:2572)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeAllChildren(CoreRenderer.java:432)
         at oracle.adfinternal.view.faces.renderkit.rich.PageTemplateRenderer.encodeAll(PageTemplateRenderer.java:69)
         at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1369)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:335)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:751)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.encodeEnd(ContextSwitchingComponent.java:153)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:415)
         at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:2572)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeAllChildren(CoreRenderer.java:432)
         at oracle.adfinternal.view.faces.renderkit.rich.FormRenderer.encodeAll(FormRenderer.java:221)
         at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1369)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:335)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:751)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:415)
         at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:2572)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeAllChildren(CoreRenderer.java:432)
         at oracle.adfinternal.view.faces.renderkit.rich.DocumentRenderer.encodeAll(DocumentRenderer.java:1066)
         at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1369)
         at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:335)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:751)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.__encodeRecursive(UIXComponentBase.java:1501)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeAll(UIXComponentBase.java:771)
         at javax.faces.component.UIComponent.encodeAll(UIComponent.java:942)
         at com.sun.faces.application.ViewHandlerImpl.doRenderView(ViewHandlerImpl.java:271)
         at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:202)
         at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:189)
         at org.apache.myfaces.trinidadinternal.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:193)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._renderResponse(LifecycleImpl.java:710)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:273)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:205)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
         at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
         at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
         at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:191)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:97)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
         at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:247)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:157)
         at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:94)
         at java.security.AccessController.doPrivileged(Native Method)
         at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
         at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
         at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:138)
         at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:70)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:159)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.dms.wls.DMSServletFilter.doFilter(DMSServletFilter.java:326)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3592)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
         at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2202)
         at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2108)
         at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1432)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)

  • How to use a menu model with a dynamic region and a task flow parameter

    I am using JDeveloper/ADF 11.1.2.1
    I have a menu model that changes which task flow is displayed in a given dynamic region using a backing bean. That works fine. I would like to be able to pass parameters to that task flow based on which menu item is clicked. For example: i have a task flow which shows a page where input fields are used to filter a table. Depending on the value of the task flow parameter I want to change which input fields are displayed. So i will have multiple menu items which refer to the same task flow but have a different set of parameters. I have tried using request scope variables and setting them in the backing bean for the dynamic region which works until the query is submitted at which point the request scope has changed and the value is no longer available. I have tried a number of other 'creative' approaches but have not gotten anything to work. Anyone done this before? Or have an idea on how to solve it?

    Frank,
    I did a fair bit of digging based on your suggestions and some things I found in your Oracle Fusion Developer's Guide book and I came up with something that works really well. It is fairly elegant but requires code. It would be nice if something like a setPropertyListener could be rolled into the menu model. That would make my solution completely declarative.
    Here is my solution:
    My task flow requires a the value #{pageFlowScope.type} to be set. My application has a dynamic region that is changed on the fly using a menu model. The region uses a backing bean (mainRegionManagerBean) which is in the viewScope to manage what taskflow is shown in the region. There are multiple menu items in the menu model that point to the same task flow but pass different values to the #{pageFlowScope.type} parameter. So i wired the menu items up to different methods in the mainRegionManagerBean which set the value for me. See the relevant code below.
    I would be very interested in the feedback from someone with more experience than I on my solution. Maybe there is a more elegant way...
    In the backing bean there is a primary method that was created by generating a dynamic region link which sets the task flow id and then other methods which call it and set the relevant parameters. (JSFUtils is a helper class i wrote to centralize some common tasks):
    public String shipmentTraceMasterTaskflow()
    taskFlowId = "/WEB-INF/taskflow/master/shipmentTraceMasterTaskflow.xml#shipmentTraceMasterTaskflow";
    JSFUtils.setValue("pageFlowScope.type", "");
    return null;
    public String shipmentTraceProNumber()
    shipmentTraceMasterTaskflow();
    JSFUtils.setValue("pageFlowScope.type", "pronumber");
    return null;
    public String shipmentTraceBOLNumber()
    shipmentTraceMasterTaskflow();
    JSFUtils.setValue("pageFlowScope.type", "bolnumber");
    return null;
    In the menu model (notice that these reference the different methods from above):
    <itemNode id="itemNode_ProNumberTrace" label="ProNumber Trace" action="#{viewScope.mainRegionManagerBean.shipmentTraceProNumber}" focusViewId=""/>
    <itemNode id="itemNode_BOLNumberTrace" label="BOL Number Trace" action="#{viewScope.mainRegionManagerBean.shipmentTraceBOLNumber}" focusViewId=""/>
    On the page:
    <af:region value="#{bindings.dynamicRegion1.regionModel}" id="r1"/>
    In the pagedef:
    <taskFlow id="dynamicRegion1" taskFlowId="${viewScope.mainRegionManagerBean.dynamicTaskFlowId}" activation="deferred" xmlns="http://xmlns.oracle.com/adf/controller/binding" Refresh="ifNeeded">
    <parameters>
    <parameter id="type" value="#{pageFlowScope.type}"/>
    </parameters>
    </taskFlow>
    Edited by: Adam Stortz on Nov 22, 2011 11:10 AM

  • ADF Menu model does not have shortDesc

    Hello  experts,  in my application I need to support 508 compliance.  I have implemented ADF menu model and noticed that the menu items does not have  shortDesc attribute.   In the structure window when I view  the menu xml file,  I can see accessKey, lable etc.  But no  shortDesc attribute.  Please guide me what should I do.   I will have to provide shortDesc for all text items, menu items etc.
    thanks

    I created ADF menu model from unbounded task flows which will be added to the template using  af:navigationPane.    The only place where we can add valid label and other attributes for each of the menu option is at  menu model meta data file.   This is xml file and in structure window, we can change the attributes to each of the menu option.   I do not see shortDesc attribute.
    Not sure it is a  bug in  jdev 11.1.1.6
    thanks

  • Bind menu bar to a menu model

    Hello,
    I'm trying to bind my menu bar (af:menubar) to a menu model.
    I created the menu model from my main unbounded task flow (adfc-config.xml) : right click -> "Create ADF Menu Model..." giving me root_menu.xml.
    My menu bar is currently defined in a page fragment mainMenu.jsff used in my pages.
    According to the 11g r2 documentation it is possible using the value attribute of the menubar component : Working with Navigation Components
    But I can't find how to do this in 11g r1 as there is no value attribute...
    Any idea ?
    I'm using JDeveloper 11.1.1.7.0.
    Thanks.
    Yann.

    So obviously it seems it is not possible ?
    I have tried using an iterator to generate menu items in my menu bar (mainMenu.jsff):
    <?xml version='1.0' encoding='UTF-8'?>
    <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.1"
              xmlns:af="http://xmlns.oracle.com/adf/faces/rich">
      <af:menuBar id="mb1" styleClass="mainMenu" stretchId="stretch1">
        <af:iterator var="myMenu" id="i1" value="#{root_menu}" rows="2">
          <af:commandMenuItem text="#{myMenu.label}" id="cmi1" icon="#{myMenu.icon}"
                              action="#{myMenu.doAction}"/>
        </af:iterator>
        <af:spacer id="stretch1" clientComponent="true"/>
      </af:menuBar>
    </jsp:root>
    Here is my menu definition (root_menu.xml):
    <?bxml version="1.0" encoding="windows-1252" ?>
    <menu xmlns="http://myfaces.apache.org/trinidad/menu">
      <itemNode id="itemNode_home"
                label="#{adfBundle['testapp.view.TranslatedText'].MAIN_MENU_HOME}"
                action="menu_home" focusViewId="/home"
                icon="/images/icon_home.png"/>
      <itemNode id="itemNode_employees"
                label="#{adfBundle['testapp.view.TranslatedText'].MAIN_MENU_EMPLOYEE_MANAGEMENT}"
                action="menu_employees" focusViewId="/employees"
                icon="/images/icon_user.png"/>
    </menu>
    My adfc-config.xml :
    <?xml version="1.0" encoding="windows-1252" ?>
    <adfc-config xmlns="http://xmlns.oracle.com/adf/controller" version="1.2">
      <view id="home">
        <page>/home.jspx</page>
      </view>
      <task-flow-call id="tf-employees">
        <task-flow-reference>
          <document>/WEB-INF/tf-employees.xml</document>
          <id>tf-employees</id>
        </task-flow-reference>
      </task-flow-call>
      <control-flow-rule id="__1">
        <from-activity-id id="__2">*</from-activity-id>
        <control-flow-case id="__4">
          <from-outcome id="__5">menu_home</from-outcome>
          <to-activity-id id="__3">home</to-activity-id>
        </control-flow-case>
        <control-flow-case id="__6">
          <from-outcome id="__8">menu_employees</from-outcome>
          <to-activity-id id="__7">tf-employees</to-activity-id>
        </control-flow-case>
      </control-flow-rule>
    </adfc-config>
    Then I include the menu fragment (mainMenu.jsff) in my pages home.jspx, employees.jspx and editEmployee.jspx.
    Menu items are generated correctly (labels, icons) even if I have warnings (reference myMenu.xxx not found) but only the employees menu item from the home page is working... others don't do anything in all pages.
    Did I missed something ?
    Can anyone test this ?
    Thanks.
    Yann.

  • ADF MENU MODEL and Rendered property!?

    Hi! I have ADF Menu Model. I tried to set rendered property, as You can see in code:
    <itemNode id="itemNode_datuIevade" label="#{sampleBundle.datuIevade}"
                action="adfMenu_datuIevade" focusViewId="/datuIevade"
                rendered="#{securityContext.userInRole['admin']}"/>I can see this Menu if I am not autorized as ADMIN. Where can be problem? This: rendered="#{securityContext.userInRole['admin']}" works fine when I set rendered property to some command Buttons.
    Best regards, Debuger!
    Edited by: Debuger on Jun 4, 2012 2:32 AM

    SOLVED! I forget to put {cede}#{menuInfo.rendered} for rendered property in my Pgage Template, where I use my ADF MENU MODEL
    Best regards, Debuger!                                                                                                                                                                                                                                                                                                                       

  • Binding menu model to a tree component

    Hi,
    I have generated menu models to all my unbounded task flows in my application and I want to display the menus as a tree in the side bar ...
    The hosted demo here tells that we can add the same menu model to a tree component...
    http://jdevadf.oracle.com/adf-richclient-demo/faces/components/pagehierarchy/page.jspx?_afrLoop=14156998585414802&_afrWindowMode=0&_afrWindowId=null
    Is it possible to bind a menu model to a Tree component? If possible...how to achieve this? If not...Is there any other way we can display the application menu in the form a tree...using the existing menu models?
    Edited by: user12747136 on Apr 13, 2010 12:26 AM

    Hi,
    I don't understand your question. You simply can use the tree and specify the MenuModel as its value and define the right detailStamp, like any kind of tree. Or was your question more general like how to use a tree?
    ~ Simon

  • Menu Model support for Telnet devices

    Hello,
    I'm trying to develop a telnet screen that includes a Menu part. I imported the ADF components as expalined in Reference Document and got such a code:
    <af:page title="Index" var="var" value="#{menuModel.model}">
    <f:facet name="nodeStamp">
    <af:commandMenuItem text="#{var.label}" action="#{var.getOutcome}"/>
    </f:facet>
    </af:page>
    This code snippet works fine in the html browsers but in the telnet screens, there is nothing except the title "Index" field.
    I also tried to build the same menu hierarchy with the af:panelpage component and the af:menuXXX attributes but the result didn't change. I tested the screens in different emulators.
    In reference documents, I read this sentence "the entire hierarchy is presented in a popup in telnet". Are ADF menu components supported by telnet devices or not? I need someones help who used menu model for telnet devices.
    Thanks for your interest...

    Erhan,
    The menu appears in a popup when the user presses the "Menu" key. This key is specified in the device configuration in appConfig.xml; by default, it is control-n.

  • Using a Menu Model to Create a Page Hierarchy

    Hello I starded to follow steps for creating a dynamic menu with Meu Model , as displayed on par 18.6 of "Web User Interface Developer's Guide for Oracle Application Development Framework ".
    My menu_root.xml is :
    <?xml version="1.0" encoding="windows-1252" ?>
    <menu xmlns="http://myfaces.apache.org/trinidad/menu">
    <itemNode id="itemNode_home" label=*"Home"* action="adfMenu_home" focusViewId="/home"/>
    <itemNode id="itemNode_search" label=*"Search"* action="adfMenu_search" focusViewId="/search"/>
    <groupNode id="gn1" idref="itemNode_adminCostCenter" label=*"Administration"*>
    <itemNode id="itemNode_adminCostCenter" label="label_adminCostCenter" action="adfMenu_adminCostCenter"
    focusViewId="/adminCostCenter"/>
    <itemNode id="itemNode_adminCostType" label="label_adminCostType" action="adfMenu_adminCostType"
    focusViewId="/adminCostType"/>
    </groupNode>
    <groupNode id="gn2" idref="itemNode_viewTransaction" label=*"Transactions"*>
    <itemNode id="itemNode_createTransaction" label="label_createTransaction" action="adfMenu_createTransaction"
    focusViewId="/createTransaction"/>
    <itemNode id="itemNode_viewTransaction" label="label_viewTransaction" action="adfMenu_viewTransaction"
    focusViewId="/viewTransaction"/>
    </groupNode>
    </menu>
    and I have bound this menu as follow on page ( it is a page for template):
    <af:panelGroupLayout id="pt_pgl1" layout="vertical">
    <af:outputText value="#{viewcontrollerBundle.HB_TITLE}" id="pt_ot1" inlineStyle="color:rgb(49,115,255); font-size:x-large;"/>
    <af:navigationPane id="pt_np1" hint="bar" value="#{root_menu}" var="menuNode" level="0">
    <f:facet name="nodeStamp">
    <af:commandNavigationItem id="pt_cni1" text="#{menuNode.label}" action="#{menuNode.doAction}" icon="#{menuNode.icon}" destination="#{menuNode.destination}"/>
    </f:facet>
    </af:navigationPane>
    <af:navigationPane id="pt_np2" hint="list" value="#{root_menu}" var="menuNode" level="1">
    <f:facet name="nodeStamp">
    <af:commandNavigationItem id="pt_cni2" text="#{menuNode.label}" action="#{menuNode.doAction}" icon="#{menuNode.icon}" destination="#{menuNode.destination}"/>
    </f:facet>
    </af:navigationPane>
    </af:panelGroupLayout>
    THEN my question is , why ,running , I see only the first level (Home | Search | Administration | Transactions ) ; the last two voices should not have a list of child (e.g. label_adminCostCenter and label_adminCostType for Administration parent ) ?
    thanks

    Sample 48 on http://www.oracle.com/technetwork/developer-tools/adf/learnmore/index-101235.html#CodeCornerSamples (though its a security example) has a working configuration for you to have a look at
    Frank

  • Unable to form af:table in navigation Menu Model

    Hi,
    Am using jdeveloper 11.1.2.1.0,
    I have developed my project with reference to the link below
    http://www.youtube.com/watch?v=cInX_FMZJaQ
    Am unable to drag and drop a VO as af:table in my jspx pages.
    Could any one pls explain me where i went wrong?

    It is not possible to drop VO directly from the model into pages. On JDeveloper, go to the Data controls view of the Applications Navigator tab, click on the refresh icon, select your application module and then then the VO instance you want to drag and drop. I'm just guessing what you could be doing wrong. Describe what steps you did. Also make sure, if you use a template, that you have declared facets and referenced the facet where you want to create the table in a container that allows tables.
    Edited by: Paulo Moniz on Oct 27, 2012 8:03 PM

  • ADF Menu Model and page flows

    Hi! I created two Unbounded task flows. One task flow for ADF sub_menu (adfc-paraugs-config.xml) and second task flow for ADF root_menu (adfc-config.xml) (see http://my.jetscreenshot.com/2677/20100708-nite-111kb).
    How can I map records between two unboundes task flows? For example in adfc-config.xml page flow I have Search page (meklesana.jspx) and I want to find records in this search page and then select one record and navigate to other page flow (adfc-paraugs-config.xml) jspx page (pasesDati.jspx) You can see page flow in link above. I want to find records in meklesana.jspx and show them in pasesDati.jspx. What to do and what are Your solutions?
    I can say that in meklesana.jspx page I had used Page Fragment element to create Search page.
    Best Regards

    Hi ADFboy! And how can I create sub menu in one task flow?
    I used this tutorial: http://www.oracle.com/technology/products/jdev/11/cuecards111/adf_set_43/ccset43_ALL.html
    PLZ can You check this out and say what I'm doing wrong?
    Best regards!

  • Using XML Menu Model Create Left Panel with Panel Accordian and ShowDetail

    Hi all,
    I want to create a custom page template. I have two level menu and I have created xml adf menu mode for that. I want to create a left panel in the template using Panel Accordian(level 1) and show detail item (level 2). Can anyone please tell me how to do that?

    Sample 48 on http://www.oracle.com/technetwork/developer-tools/adf/learnmore/index-101235.html#CodeCornerSamples (though its a security example) has a working configuration for you to have a look at
    Frank

  • Menu tabs disappear completely after login and appears if only i press on item node at hire level

    I'm using a Menu Model to Create a Page Hierarchy in my adf application on Jdeveloper 11.1.2.3.0
    it is in three levels level 1 have 2 item nods (home - Help) displayed as buttons
                                level 2   contains 5 item nods about the managements displayed as tabs
                                level 3   is about reports displayed as list
    the point I have apply security in the application using Adf security wizard and i assign roles and users and grants
    all works fine but level 2 tabs disappear completely after login and appears if only i press on Home item node at run time
    I create 2 users (admin) has all roles  and can view all  tabs in level 2 of my navigation and another user (emp)  which can view one Tab page in level 2
    Point 1 --the item nod are rendered according the #{securityContext.regionViewable['oracle.view.pageDefs.RentManagPageDef']}     (EL ) expression language 
    and other item nod render property are set as the same but in the page name definition
    it works fine
    _ Point 2 in my page template I set #{menuInfo.rendered} for renderd property of the command navigation item
    it works fine
    - point 3 I add a  go link in my template to explicit perform log in log out from the app  and redirect the user to the required page
    Destination is
    #{securityContext.authenticated ? "/adfAuthentication?logout=true&end_url=/faces/wearhouse.jsf"  : "/adfAuthentication?success_url=/faces/company.jsf"}
    and its also works fine
    the problem is in the level 2 navigation tabs which is diaper after explicit log in the app directs the user to the correct page successfully
    But the tabs are not rendered till I press on home button on Level 1 navigation it appears and it appears  correctly cording the logged in user validation
    in another words i log in as user (admin) i get directed to the successful log in page  in the link go but  level 2 tabs are invisible or not rendered at all    I click on Home button in level1 navigation the tabs
    become rendered or viewable and i navigate normally
    I log out as admin the level 2 tabs becomes invisible again
    then I log in as (emp)  i get directed to the successful log in page and  level 2 tabs are still  invisible or not rendered
    I click on Home button in level1 navigation the only one tab the user emp authorized to it  gets rendered (appears)
    and its semi correct behavior because this is what I want him to see only
    my tries to find solution
    I tride to use
    #{securityContext.userInRole['division']}
    on the menu node item   I found same behavior level 2 tabs gets hidden till i click on home link at run time
    I tride to use #{securityContext.authenticated} to control item nods rending
    all tabs remains visible and i dont want that ain adition if user clicks on a tab of page he has no authority on it i recive server error
    I read 30.7 Creating a Login Page in the  Fusion Developer's Guide for Oracle Application Development Framework to finde about redirecting user
    and it is using the same as i did from adf tutorials
    I tried to make new navigation app on fast
    maybe i made incorrect change in any stage of my original app
    but I found same behavior
    I tried to set disabled property instead of rendered property the tabs are always rendered   but I got server error when I click on a tab which a user does not authorized
    So I doubt maybe problem in the El or the way I use to control rendering item node
    or there additional step to stop all  the tabs disappear after login
    I hope please some one Help or tell me what i have to read about in the developer guide  or interface developer guide or article on the web
    I'll be gratfule
    I know maybe it is small issue but help me please

    Hi,
    have a look at the sample that comes with this article: Oracle ADF: Security for Everyone It uses resource remissions to authorize panel tabs.
    One test to run is to print the outcome of the security evaluation (e.g. output text) to see what it returns.
    Frank

  • ADF - managed bean error in dynamic menu creation

    scenario:
    to create dynamic menu for two tabs : general..
    general has a subtabmenu in form of menubar wid items: country, city,...
    i created dynamic menus for my application.wen i ran my page i got this error:
    SEVERE: Managedbean menuItem_General could not be created Can't get value from value binding expression:
    '#{resources['erms.menu.gen']}'
    (erms.menu.gen is an entry in UIResources.properties)
    now, i followed the exact same process as mentioned in the SRDemo application, in adfdevguide!
    double checked that
    i. resource adapter is configured in faces-config.
    ii.menu model and menuTreeModel are configured with thier default adapaters in faces-config.
    iii.resource bundle specified in jsp page.
    can sum1 plz refer
    1.wat is the reason of this error? wat are the things dat shud hold true in order to run these dynamic menu? which files shud
    b specified where?
    2. in wat order are the managedbeans created ?
    is it in order they apprear in faces-config file or in order they are used in the jsp page?
    3: is it possible that u click on a menuTab item and it displays its particular menubar's items while staying on the same page? or
    u click on a menubar item and it displays its particular dropdowns while staying on the same page?
    is it posible wid ADF or javascript shud b used?

    Hi,
    looking at code it seems that you are adding textview and inputfield. please check in debugging if the correct context node/attribute  is being created and you are providing its reference while adding UI elements.
    Thanks,
    Chandra

  • Train model process - How to reset its max path

    Hi everyone,
    Could someone please point me into any document or give me any advice on how I can clear the max path of the process train. The process train that I created is called every time by the registration user who enters many applications. Each application creates a process train with the 8 pages they need to go through. The first time it works perfectly, but the second time, because they finished the first process, the component still thinks that they already went through all the pages and allows them to click the last page. I noticed the class is based on a session bean so I suppose somewhere I need to call clearMaxPath() from class ProcessMenuModel. I have been trying to create a method in the main class but it seems I cannot access this method. Any ideas would be appreciated. The class where I was trying to add this method is below:
    package esolve.userinterface.menu;
    import java.beans.IntrospectionException;
    import java.io.Serializable;
    import oracle.adf.view.faces.model.MenuModel;
    import oracle.adf.view.faces.model.ProcessMenuModel;
    public class ProcessTrainModelAdapter implements Serializable {
    private String _propertyName = null;
    private Object _instance = null;
    private transient MenuModel _model = null;
    private Object _maxPathKey = null;
    public MenuModel getModel() throws IntrospectionException {
    if (_model == null)
    _model = new ProcessMenuModel(getInstance(),
    getViewIdProperty(),
    getMaxPathKey());
    return _model;
    public String getViewIdProperty() {
    return _propertyName;
    * Sets the property to use to get at view id
    * @param propertyName
    public void setViewIdProperty(String propertyName) {
    _propertyName = propertyName;
    _model = null;
    public Object getInstance() {
    return _instance;
    * Sets the treeModel
    * @param instance must be something that can be converted into a TreeModel
    public void setInstance(Object instance) {
    _instance = instance;
    _model = null;
    public Object getMaxPathKey()
    return _maxPathKey;
    public void setMaxPathKey(Object maxPathKey)
    _maxPathKey = maxPathKey;
    And from the faces config this is the session bean
    <!--Step 4. create the train menu model -->
    <managed-bean>
    <managed-bean-name>createTrainMenuModel</managed-bean-name>
    <managed-bean-class>esolve.userinterface.menu.ProcessTrainModelAdapter</managed-bean-class>
    <managed-bean-scope>session</managed-bean-scope>
    <managed-property>
    <property-name>maxPathKey</property-name>
    <value>8</value>
    </managed-property>
    <managed-property>
    <property-name>viewIdProperty</property-name>
    <value>viewId</value>
    </managed-property>
    <managed-property>
    <property-name>instance</property-name>
    <value>#{createTrainNodes}</value>
    </managed-property>
    </managed-bean>

    Hi Dennis,
    Please see example code. In here it works well because of the change of data source. If you use a .json file rather than json object as data source ( I don't know how to do it in JSBin), bugs appear as I mentioned above.
    Here's a simple test case using .json file as data source, hope it helps to make me understood:
    Step1. select "item 0" , and check "mcb0_0" & "mcb0_1".
    Step2. select "item 1". See what happens.
    Result:
    1."mcb1_0" & "mcb1_1" are automatically selected.------- WRONG.
    2. The value of MultiComboBox is mcb0_0mcb0_1.--------WRONG.

Maybe you are looking for

  • There is an invalid number of result bindings returned for the ResultSetType

    SSIS SQL Task:  Single Row Result Set Code was updated to test for data in target:  If Exists Do Merge  ELSE Do Insert Previously was just a merge that Output $Action to @ChangeSum and then @ChangeSum queried for updates and inserts That all worked b

  • J2me database connection

    hey i am new to j2me wireless havent even started coding anything from my project I wanted to know whether j2me supports SQL connectivity. I yes, how should i connect it to the database. If No please provide some other way through which i can store a

  • Inventory gain when inter-company stock transfer

    hi Experts, Scenario: one step transfer material A 100 pc from plant 1000(belongs to co. code 1000) to plant 2000( belongs co.code 2000) through t-code MB1B, then FI docs were generated in co code 1000 and 2000. FI doc in co. code 1000 is: Dr 194002 

  • Adobe Reader won't download and PDFs won't open

    All of a sudden I cannot open PDFs, so I have tried to download Adobe Reader XI and it gets to 78% then fails. It will not give me a reason for the failed installation, and when I try to open PDFs I get a message that says "Acrobat failed to load its

  • How to save an image w/o artboard?

    I am a beginner w/ adobe illustrator I have CS5 and I am able to do basic graphics. I have been trying to make graphics and save the without an artboard for example sometimes I want just the text to stand alone or maybe I made a teddy bear and just w