8 Replies Latest reply on Sep 26, 2007 3:16 PM by Steven Davelaar-Oracle

    JBO-25030 Exception

    paskal_alma
      Hi,

      I'm generating a JSP application with JHeadstart10.1.2.2 build13.
      I have defined in the JAG one basegroup with 6 detail groups. If I create a new record in one of the detail groups, at one detail group this is working fine, but at the other ones I get a exception:
      JBO-25030: Kan entiteit met eigenaarsrechten niet vinden of ongeldig maken

      The associations and viewlinks look all the same (No composite constructions in the association). I have just generated the pages and made no custom changes to the code.

      Does anyone have an idea how I can solve this?
        • 1. Re: JBO-25030 Exception
          paskal_alma
          Here is some more info referring to this issue:

          Of course I have used JHeadstart build 32 and not 13.

          I'm getting the exception also when trying to create some rows programmatically for a new master row. The complete stacktrace is at the end of this post.

          The strange thing is that if I create the master row also programmatically and then call my custom method to create the child records it works fine. But when I create the master row in my generated screen and my custom method is called by the ADF framework, it gives me the JBO-25030 exception.

          Possible causes for this problem are more then welcome :-)

          The stacktrace:
          oracle.jbo.InvalidOwnerException: JBO-25030: Kan entiteit met eigenaarsrechten niet vinden of ongeldig maken.
                  at oracle.jbo.server.EntityImpl.internalCreate(EntityImpl.java:528)
                  at oracle.jbo.server.EntityImpl.create(EntityImpl.java:395)
                  at logicacmg.adf.model.businessobjects.ResultEntityImpl.create(ResultEntityImpl.java:127)
                  at oracle.jbo.server.EntityImpl.callCreate(EntityImpl.java:413)
                  at oracle.jbo.server.ViewRowStorage.create(ViewRowStorage.java:849)
                  at oracle.jbo.server.ViewRowImpl.create(ViewRowImpl.java:336)
                  at oracle.jbo.server.ViewRowImpl.callCreate(ViewRowImpl.java:353)
                  at oracle.jbo.server.ViewObjectImpl.createInstance(ViewObjectImpl.java:2549)
                  at oracle.jbo.server.QueryCollection.createRowWithEntities(QueryCollection.java:1048)
                  at oracle.jbo.server.ViewRowSetImpl.createRowWithEntities(ViewRowSetImpl.java:1724)
                  at oracle.jbo.server.ViewRowSetImpl.doCreateAndInitRow(ViewRowSetImpl.java:1766)
                  at oracle.jbo.server.ViewRowSetImpl.createRow(ViewRowSetImpl.java:1746)
                  at com.hbr.rbs.referentie.model.service.RbsReferentieServiceImpl.initRbsEigenschappenView(RbsReferentieServiceImpl.java:271)
                  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:324)
                  at oracle.adf.model.binding.DCInvokeMethodDef.invokeMethod(DCInvokeMethodDef.java:275)
                  at oracle.adf.model.binding.DCDataControl.invokeMethod(DCDataControl.java:1609)
                  at oracle.adf.model.binding.DCInvokeMethodDef.callMethod(DCInvokeMethodDef.java:169)
                  at oracle.jbo.uicli.binding.JUCtrlActionBinding.doIt(JUCtrlActionBinding.java:1054)
                  at oracle.adf.controller.struts.actions.StrutsPageLifecycle.invokeCustomMethod(StrutsPageLifecycle.java:364)
                  at oracle.adf.controller.struts.actions.DataAction.invokeCustomMethod(DataAction.java:352)
                  at oracle.jheadstart.controller.strutsadf.action.JhsDataAction.invokeCustomMethod(JhsDataAction.java:3833)
                  at oracle.adf.controller.struts.actions.DataAction.invokeCustomMethod(DataAction.java:542)
                  at oracle.adf.controller.lifecycle.PageLifecycle.handleLifecycle(PageLifecycle.java:134)
                  at oracle.adf.controller.struts.actions.DataAction.handleLifecycle(DataAction.java:222)
                  at oracle.jheadstart.controller.strutsadf.action.JhsDataAction.handleLifecycle(JhsDataAction.java:506)
                  at logicacmg.adf.controller.strutsadf.action.ResultJhsDataAction.handleLifecycle(ResultJhsDataAction.java:180)
                  at oracle.adf.controller.struts.actions.DataAction.execute(DataAction.java:153)
                  at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
                  at oracle.jheadstart.controller.strutsadf.JhsRequestProcessor.processActionPerform(JhsRequestProcessor.java:118)
                  at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
                  at oracle.jheadstart.controller.strutsadf.JhsRequestProcessor.process(JhsRequestProcessor.java:385)
                  at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
                  at oracle.jheadstart.controller.strutsadf.JhsActionServlet.process(JhsActionServlet.java:130)
                  at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
                  at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
                  at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
                  at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:765)
                  at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:317)
                  at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:220)
                  at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1069)
                  at org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:274)
                  at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:455)
                  at org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:320)
                  at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279)
                  at oracle.jheadstart.controller.strutsadf.JhsRequestProcessor.process(JhsRequestProcessor.java:385)
                  at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
                  at oracle.jheadstart.controller.strutsadf.JhsActionServlet.process(JhsActionServlet.java:130)
                  at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
                  at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
                  at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
                  at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
                  at oracle.jheadstart.controller.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:176)
                  at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:16)
                  at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:239)
                  at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:600)
                  at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:317)
                  at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:790)
                  at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:270)
                  at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:112)
                  at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192)
                  at java.lang.Thread.run(Thread.java:534)
          Here the piece of code that create the child records:
          (RbsGseStoffenView is the master view and RbsGseEigenschappenView is the detail view)
                  Row currentRow = getRbsGseStoffenView().getCurrentRow();
                 
                  /* If current row is found ... */
                  if (!hasPendingDataPosts() && currentRow != null)
                  {
                   ...
                   _log.debug("Creating new GsfEigenschappenView row for GseId " +          currentRow.getAttribute("Id"));
                              // ... create row with current GseId
                              // note: Row gets created on middle-tier, not in database.
                              Row newRow = ((RbsGseStoffenViewRowImpl) currentRow)
                                            .getRbsGseEigenschappenView()
                                            .createRow();
                                           
                              newRow.setAttribute("RijIdEgp", egpRows.getAttribute("RijId"));

          ((RbsGseStoffenViewRowImpl) currentRow).getRbsGseEigenschappenView().insertRow(newRow);
          • 2. Re: JBO-25030 Exception
            Steven Davelaar-Oracle
            Paskal,

            Check out this link:
            http://radio.weblogs.com/0118231/stories/2003/01/17/whyDoIGetTheInvalidownerexception.html

            Steven Davelaar,
            JHeadstart Team.
            • 3. Re: JBO-25030 Exception
              paskal_alma
              Steven,

              I have seen that article. But as far as I can tell I'm doing what Steve tells there, but I am still having the problem.
              I will try to make a simpler test case so I can find out what is the exact cause of the problem.

              Thanks anyway.
              • 4. Re: JBO-25030 Exception
                paskal_alma
                I have found the problem (and solution :-) ).

                For the record:
                I was generating Master-Detail page for say table M(aster) and table D(etail). Although I was creating records for D in the context of M, it appeared D was also a detail of table M2. With this M2 the D had a composite relation (set in the association). By removing the composite flag in the association this exception was gone.
                • 5. Re: JBO-25030 Exception
                  371798
                  Paskal

                  Thanks for the tip, You just saved my day.

                  What I do not understand though is, when do these check boxes become activated when an ossification is defined and if this is a bug or not.

                  Thanassis
                  • 6. Re: JBO-25030 Exception
                    256972
                    This saved my butt as well, I have spent the last couple of hours wondering why I could not get it to work. When I used the wizards to create my components, the wizard marked the check boxes for me. Turned em off and now my code works great!!!
                    • 7. Re: JBO-25030 Exception
                      594171
                      This saved my butt as well, I have spent the last
                      couple of hours wondering why I could not get it to
                      work. When I used the wizards to create my
                      components, the wizard marked the check boxes for me.
                      Turned em off and now my code works great!!!
                      - Yes, but how to achieve cascade delete without that ?
                      • 8. Re: JBO-25030 Exception
                        Steven Davelaar-Oracle
                        Please post your question in the JDeveloper forum since it is not related to JHeadstart.

                        Thank you,
                        Steven Davelaar,
                        JHeadstart Team.