6 Replies Latest reply: Mar 5, 2013 2:03 AM by Tshifhiwa RSS

    ViewRowSetIteratorImpl.insertRowAtRangeIndex is invalid: index beyond end

    Tshifhiwa
      hi am inserting row programatically am geting this error JBO-25006: Value 2 passed as parameter rangeIndex to method ViewRowSetIteratorImpl.insertRowAtRangeIndex is invalid: index beyond end of row set.am geting error in this line rsi.insertRowAtRangeIndex(lastRowIndex +1, newRow);
      my log error is
      <XmlErrorHandler> <handleError> ADF_FACES-60096:Server Exception during PPR, #1
      javax.servlet.ServletException: JBO-25006: Value 2 passed as parameter rangeIndex to method ViewRowSetIteratorImpl.insertRowAtRangeIndex is invalid: index beyond end of row set.
           at javax.faces.webapp.FacesServlet.service(FacesServlet.java:277)
           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:300)
           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:205)
           at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
           at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:106)
           at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
           at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
           at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
           at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:271)
           at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:177)
           at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
           at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
           at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:179)
           at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
           at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:119)
           at java.security.AccessController.doPrivileged(Native Method)
           at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:315)
           at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:442)
           at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:103)
           at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:171)
           at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
           at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
           at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:139)
           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.wrapRun(WebAppServletContext.java:3715)
           at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
           at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
           at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
           at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
           at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
           at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
           at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
           at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
      Caused by: oracle.jbo.InvalidParamException: JBO-29114 ADFContext is not setup to process messages for this exception. Use the exception stack trace and error code to investigate the root cause of this exception. Root cause error code is JBO-25006. Error message parameters are {0=ViewRowSetIteratorImpl.insertRowAtRangeIndex, 1=rangeIndex, 2=2, 3=index beyond end of row set}
           at oracle.jbo.server.ViewRowSetIteratorImpl.insertRowAtRangeIndex(ViewRowSetIteratorImpl.java:2467)
           at oracle.jbo.server.ViewRowSetImpl.insertRowAtRangeIndex(ViewRowSetImpl.java:3178)
           at oracle.jbo.server.ViewObjectImpl.insertRowAtRangeIndex(ViewObjectImpl.java:11127)
           at uam.cadastre.gov.za.OrgDetails.onRowCreate(OrgDetails.java:1698)
           at uam.cadastre.gov.za.OrgDetails.addMember(OrgDetails.java:1634)
           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 com.sun.el.parser.AstValue.invoke(Unknown Source)
           at com.sun.el.MethodExpressionImpl.invoke(Unknown Source)
           at org.apache.myfaces.trinidadinternal.taglib.util.MethodExpressionMethodBinding.invoke(MethodExpressionMethodBinding.java:53)
           at org.apache.myfaces.trinidad.component.UIXComponentBase.broadcastToMethodBinding(UIXComponentBase.java:1256)
           at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:183)
           at org.apache.myfaces.trinidad.component.UIXCollection.broadcast(UIXCollection.java:148)
           at org.apache.myfaces.trinidad.component.UIXTable.broadcast(UIXTable.java:279)
           at oracle.adf.view.rich.component.UIXTable.broadcast(UIXTable.java:145)
           at oracle.adf.view.rich.component.rich.data.RichTable.broadcast(RichTable.java:402)
           at oracle.adf.view.rich.component.fragment.UIXRegion.broadcast(UIXRegion.java:148)
           at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.broadcastEvents(LifecycleImpl.java:1018)
           at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:386)
           at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:194)
           at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
           ... 38 more
      Edited by: adf009 on 2013/02/28 4:23 PM

      Edited by: adf009 on 2013/02/28 5:17 PM

      Edited by: adf009 on 2013/02/28 5:18 PM
        • 1. Re: ViewRowSetIteratorImpl.insertRowAtRangeIndex is invalid: index beyond end
          Timo Hahn
          adf009,
          hae a look into the javadoc of the method you use (http://docs.oracle.com/cd/E12839_01/apirefs.1111/e10653/oracle/jbo/RowIterator.html#getRangeIndexOf(oracle.jbo.Row))
          >
          Inserts a row to the Row Set at the given range index. The index is relative to the range, i.e., index of 0 would mean to insert before the first row of the range. Allowed values for index is 0 to range size. If index equals range size, the row is inserted right after the last row in the range. This method call does not alter the current position of the iterator, nor does it affect the range position.
          >
          Meaning: if you use lastrowindex+1 you are too far and out of bounds.

          Timo
          • 2. Re: ViewRowSetIteratorImpl.insertRowAtRangeIndex is invalid: index beyond end
            Tshifhiwa
            RowSetIterator rsi = dciter.getRowSetIterator();
            rsi.first();
            • 4. Re: ViewRowSetIteratorImpl.insertRowAtRangeIndex is invalid: index beyond end
              Tshifhiwa
              i gues so this value was commented rsi.first(); when i uncomented it it works
              • 5. Re: ViewRowSetIteratorImpl.insertRowAtRangeIndex is invalid: index beyond end
                Timo Hahn
                2 lines of code, which are totally out of context, are never answer!

                Now, after you put in some context, it might be the answer. Problem is, that we don't know where to put this code and if you removed the line of code which caused the error in the first place, or changed it to something we can't see.

                It's like a question need some context, an answer needs the context too.

                Timo
                • 6. Re: ViewRowSetIteratorImpl.insertRowAtRangeIndex is invalid: index beyond end
                  Tshifhiwa
                  am still geting the error when i try to add new row to another view ,am inserting row programaticaly,i get the error in the same line
                  
                    
                  the log erro
                  javax.servlet.ServletException: JBO-25006: Value 3 passed as parameter rangeIndex to method ViewRowSetIteratorImpl.insertRowAtRangeIndex is invalid: index beyond end of row set.
                       at javax.faces.webapp.FacesServlet.service(FacesServlet.java:277)
                       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:300)
                       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:205)
                       at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
                       at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:106)
                       at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
                       at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
                       at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
                       at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:271)
                       at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:177)
                       at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
                       at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
                       at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:179)
                       at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
                       at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:119)
                       at java.security.AccessController.doPrivileged(Native Method)
                       at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:315)
                       at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:442)
                       at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:103)
                       at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:171)
                       at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
                       at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
                       at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:139)
                       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.wrapRun(WebAppServletContext.java:3715)
                       at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
                       at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
                       at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
                       at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
                       at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
                       at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
                       at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
                       at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
                  Caused by: oracle.jbo.InvalidParamException: JBO-29114 ADFContext is not setup to process messages for this exception. Use the exception stack trace and error code to investigate the root cause of this exception. Root cause error code is JBO-25006. Error message parameters are {0=ViewRowSetIteratorImpl.insertRowAtRangeIndex, 1=rangeIndex, 2=3, 3=index beyond end of row set}
                       at oracle.jbo.server.ViewRowSetIteratorImpl.insertRowAtRangeIndex(ViewRowSetIteratorImpl.java:2467)
                       at oracle.jbo.server.ViewRowSetImpl.insertRowAtRangeIndex(ViewRowSetImpl.java:3178)
                       at oracle.jbo.server.ViewObjectImpl.insertRowAtRangeIndex(ViewObjectImpl.java:11127)
                       at uam.cadastre.gov.za.OrgDetails.onRowCreate(OrgDetails.java:1714)
                       at uam.cadastre.gov.za.OrgDetails.addMember(OrgDetails.java:1650)
                       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 com.sun.el.parser.AstValue.invoke(Unknown Source)
                       at com.sun.el.MethodExpressionImpl.invoke(Unknown Source)
                       at org.apache.myfaces.trinidadinternal.taglib.util.MethodExpressionMethodBinding.invoke(MethodExpressionMethodBinding.java:53)
                       at org.apache.myfaces.trinidad.component.UIXComponentBase.broadcastToMethodBinding(UIXComponentBase.java:1256)
                       at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:183)
                       at org.apache.myfaces.trinidad.component.UIXCollection.broadcast(UIXCollection.java:148)
                       at org.apache.myfaces.trinidad.component.UIXTable.broadcast(UIXTable.java:279)
                       at oracle.adf.view.rich.component.UIXTable.broadcast(UIXTable.java:145)
                       at oracle.adf.view.rich.component.rich.data.RichTable.broadcast(RichTable.java:402)
                       at oracle.adf.view.rich.component.fragment.UIXRegion.broadcast(UIXRegion.java:148)
                       at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.broadcastEvents(LifecycleImpl.java:1018)
                       at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:386)
                       at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:194)
                       at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
                       ... 38 more
                  Edited by: adf009 on 2013/03/04 5:10 PM

                  Edited by: adf009 on 2013/03/04 5:11 PM

                  Edited by: adf009 on 2013/03/05 11:02 AM