1 Reply Latest reply on Jul 29, 2009 8:53 AM by ali_nizam

    partial trigger and circilar depedency in J dev 11g R2 ADF BC ADFRC apps.

    ali_nizam
      We have a master detail forms. Master view objects is ADF forms . Detail is table.
      We tried to prevent refresh full page when a detail record added or deleted.
      We use partial triggers. But some PPR error occurs when we tried to add new record and some PPR in table columsn to implement cascade list is triggered.
      errro log and table details as follows.


      "Target unreacehbe. identifier return null, PPR7 . pleae see server error log ..."

      Server error log is.

      SEVERE: Server Exception during PPR, #1
      java.lang.NullPointerException
      at oracle.adfinternal.view.faces.model.binding.RowDataManager.setRowKey(RowDataManager.java:134)
      at oracle.adfinternal.view.faces.model.binding.FacesCtrlHierBinding$FacesModel.setRowKey(FacesCtrlHierBinding.java:542)
      at org.apache.myfaces.trinidad.component.UIXCollection.setRowKey(UIXCollection.java:423)
      at org.apache.myfaces.trinidad.component.UIXCollection.setClientRowKey(UIXCollection.java:653)
      at org.apache.myfaces.trinidad.component.UIXCollection.setCurrencyString(UIXCollection.java:570)
      at org.apache.myfaces.trinidad.component.UIXCollection.invokeOnComponent(UIXCollection.java:1058)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.invokeOnChildrenComponents(UIXComponentBase.java:1312)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.invokeOnNamingContainerComponent(UIXComponentBase.java:1362)
      at org.apache.myfaces.trinidad.component.UIXDecorateCollection.invokeOnComponent(UIXDecorateCollection.java:121)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.invokeOnComponent(UIXComponentBase.java:1406)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.invokeOnComponent(UIXComponentBase.java:1406)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.invokeOnComponent(UIXComponentBase.java:1406)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.invokeOnComponent(UIXComponentBase.java:1406)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.invokeOnChildrenComponents(UIXComponentBase.java:1312)
      at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.invokeOnComponent(ContextSwitchingComponent.java:188)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.invokeOnComponent(UIXComponentBase.java:1406)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.invokeOnComponent(UIXComponentBase.java:1406)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.invokeOnComponent(UIXComponentBase.java:1406)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.invokeOnChildrenComponents(UIXComponentBase.java:1312)
      at oracle.adf.view.rich.component.fragment.UIXInclude.invokeOnComponent(UIXInclude.java:123)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.invokeOnComponent(UIXComponentBase.java:1406)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.invokeOnComponent(UIXComponentBase.java:1406)
      at oracle.adf.view.rich.component.rich.RichDocument.invokeOnComponent(RichDocument.java:159)
      at javax.faces.component.UIComponent.invokeOnComponent(UIComponent.java:731)
      at javax.faces.component.UIComponentBase.invokeOnComponent(UIComponentBase.java:675)
      at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._fixClientIds(LifecycleImpl.java:900)
      at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:366)
      at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:165)
      at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
      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:27)
      at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57)
      at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:191)
      at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57)
      at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:85)
      at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:421)
      at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:54)
      at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:421)
      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:57)
      at oracle.security.jps.wls.JpsWlsFilter$1.run(JpsWlsFilter.java:96)
      at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
      at oracle.security.jps.wls.util.JpsWlsUtil.runJaasMode(JpsWlsUtil.java:146)
      at oracle.security.jps.wls.JpsWlsFilter.doFilter(JpsWlsFilter.java:140)
      at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:70)
      at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57)
      at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:160)
      at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57)
      at oracle.dms.wls.DMSServletFilter.doFilter(DMSServletFilter.java:202)
      at oracle.dms.wls.DMSServletFilter.doFilter(DMSServletFilter.java:202)
      at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57)
      at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
      at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57)
      at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3588)
      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:2200)
      at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2106)
      at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1428)
      at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
      at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
      oracle.jbo.TooManyObjectsException: JBO-25013: Too many objects match the primary key oracle.jbo.Key[null null 03090000 ].
      at oracle.jbo.server.EntityCache.throwTooManyObjectsException(EntityCache.java:435)
      at oracle.jbo.server.EntityCache.addForAltKey(EntityCache.java:822)
      at oracle.jbo.server.EntityImpl.setAttributeValueInternal(EntityImpl.java:3668)
      at oracle.jbo.server.EntityImpl.readAttrsFromXML(EntityImpl.java:9319)
      at oracle.jbo.server.Serializer.activateEntity(Serializer.java:661)
      at oracle.jbo.server.Serializer.activateTxn(Serializer.java:555)
      at oracle.jbo.server.Serializer.activate(Serializer.java:275)
      at oracle.jbo.server.FileSerializer.activateRootAM(FileSerializer.java:256)
      at oracle.jbo.server.ApplicationModuleImpl.activateState(ApplicationModuleImpl.java:5895)
      at oracle.jbo.server.ApplicationPoolMessageHandler.doPoolMessage(ApplicationPoolMessageHandler.java:217)
      at oracle.jbo.server.ApplicationModuleImpl.doPoolMessage(ApplicationModuleImpl.java:8470)
      at oracle.jbo.common.ampool.ApplicationPoolImpl.sendPoolMessage(ApplicationPoolImpl.java:4389)
      at oracle.jbo.common.ampool.ApplicationPoolImpl.prepareApplicationModule(ApplicationPoolImpl.java:2385)
      at oracle.jbo.common.ampool.ApplicationPoolImpl.doCheckout(ApplicationPoolImpl.java:2201)
      at oracle.jbo.common.ampool.ApplicationPoolImpl.useApplicationModule(ApplicationPoolImpl.java:3085)
      at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule(SessionCookieImpl.java:460)
      at oracle.jbo.http.HttpSessionCookieImpl.useApplicationModule(HttpSessionCookieImpl.java:234)
      at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule(SessionCookieImpl.java:431)
      at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule(SessionCookieImpl.java:426)
      at oracle.adf.model.bc4j.DCJboDataControl.initializeApplicationModule(DCJboDataControl.java:515)
      at oracle.adf.model.bc4j.DCJboDataControl.getApplicationModule(DCJboDataControl.java:858)
      at oracle.adf.model.binding.DCBindingContainer.findDataControl(DCBindingContainer.java:1537)
      at oracle.adf.model.binding.DCIteratorBinding.initDataControl(DCIteratorBinding.java:2403)
      at oracle.adf.model.binding.DCIteratorBinding.getDataControl(DCIteratorBinding.java:2348)
      at oracle.jbo.uicli.binding.JUCtrlActionBinding.getDataControl(JUCtrlActionBinding.java:581)
      at oracle.adf.model.binding.DCInvokeAction.refresh(DCInvokeAction.java:27)
      at oracle.adf.model.binding.DCBindingContainer.internalRefreshControl(DCBindingContainer.java:3107)
      at oracle.adf.model.binding.DCBindingContainer.refresh(DCBindingContainer.java:2759)
      at oracle.adf.controller.v2.lifecycle.PageLifecycleImpl.prepareModel(PageLifecycleImpl.java:112)
      at oracle.adf.controller.faces.lifecycle.FacesPageLifecycle.prepareModel(FacesPageLifecycle.java:80)
      at oracle.adf.controller.v2.lifecycle.Lifecycle$2.execute(Lifecycle.java:137)
      at oracle.adfinternal.controller.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:192)
      at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener.mav$executePhase(ADFPhaseListener.java:21)
      at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener$PhaseInvokerImpl.startPageLifecycle(ADFPhaseListener.java:231)
      at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener$1.after(ADFPhaseListener.java:267)
      at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener.afterPhase(ADFPhaseListener.java:71)
      at oracle.adfinternal.controller.faces.lifecycle.ADFLifecyclePhaseListener.afterPhase(ADFLifecyclePhaseListener.java:53)
      at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:352)
      at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:165)
      at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
      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 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:85)
      at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
      at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:54)
      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.wls.JpsWlsFilter$1.run(JpsWlsFilter.java:96)
      at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
      at oracle.security.jps.wls.util.JpsWlsUtil.runJaasMode(JpsWlsUtil.java:146)
      at oracle.security.jps.wls.JpsWlsFilter.doFilter(JpsWlsFilter.java:140)
      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:202)
      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:3588)
      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:2200)
      at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2106)
      at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1428)
      at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
      at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)




      <af:table value="#{bindings.ViewMisdt626_1.collectionModel}"
      var="row"
      rows="#{bindings.ViewMisdt626_1.rangeSize}"
      emptyText="#{bindings.ViewMisdt626_1.viewable ? 'No rows yet.' : 'Access Denied.'}"
      fetchSize="#{bindings.ViewMisdt626_1.rangeSize}"
      binding="#{backingBeanScope.backing_app_yeniEvrak.table11}"
      selectedRowKeys="#{bindings.ViewMisdt626_1.collectionModel.selectedRow}"
      selectionListener="#{bindings.ViewMisdt626_1.collectionModel.makeCurrent}"
      id="table11"
      inlineStyle="height:250px; width:100%;"
      width="900"
      rowSelection="single"
      partialTriggers=":::commandButton11 :::commandButton21 :::commandButton8 ::commandButton18 ::commandToolbarButton3 :::table3 :::commandButton10">
      <af:column sortProperty="GidisTuru" sortable="false"
      width="100" id="c1" headerText="Gidiş Türü" minimumWidth="50">
      <af:selectOneChoice value="#{row.bindings.GidisTuru.inputValue}"
      label="#{row.bindings.GidisTuru.label}"
      required="#{bindings.ViewMisdt626_1.hints.GidisTuru.mandatory}"
      shortDesc="#{bindings.ViewMisdt626_1.hints.GidisTuru.tooltip}"
      id="selectGidisTuru"
      autoSubmit="true"
      showRequired="true"
      partialTriggers="selectGittigiYer"
      immediate="true">
      <f:selectItems value="#{row.bindings.GidisTuru.items}"
      id="si1"/>
      </af:selectOneChoice>
      </af:column>
      <af:column sortProperty="GittigiYer" sortable="false"
      width="200" id="c2" headerText="Gittiği Yer">
      <af:selectOneChoice value="#{row.bindings.GittigiYer.inputValue}"
      label="#{row.bindings.GittigiYer.label}"
      required="#{bindings.ViewMisdt626_1.hints.GittigiYer.mandatory}"
      shortDesc="#{bindings.ViewMisdt626_1.hints.GittigiYer.tooltip}"
      immediate="false"
      partialTriggers="selectGidisTuru"
      id="selectGittigiYer" inlineStyle="width:200.0px;">
      <f:selectItems value="#{row.bindings.GittigiYer.items}"
      id="si2"/>
      </af:selectOneChoice>
      </af:column>
        • 1. Re: partial trigger and circilar depedency in J dev 11g R2 ADF BC ADFRC apps.
          ali_nizam
          I have some question about PPR .
          In our case
          Our forms main commit button is full_submit = true
          We added create insert button of detail view to the partial trigger of table.

          1. do we need to add froms main commit button to the detail table's partial trigers.
          2. is there any circular dpendecy between PPR . if we add a partial target to the table do we need to add this trigger to the columns.
          in our case the question is
          do we need to add create insert button of detail view to the partial triiger of cascade list items' partail triggers.

          Thanks.