JBO-26020: Attempting to insert row with no matching EO base

Hi All,
I have a bit of a problem here. The following is some background information. Please help if possible.
Aim: I have a custom application whereby I need to add the sequence value (assuming the sequence.nextval is already taken and stored into a variable/original table) to my custom table.
Procedures taken: I have found the EO which gets the sequence value for the original application and the VO that gets the EO. I have added both EO and VO to my project and tried to add the VO to my custom AM. In my custom AM I have added the following code to initialize the create function of the standard EO:
**********CODE******************
OAViewObject vo3 = (OAViewObject)getRegRequestsVO1();
if (!vo3.isPreparedForExecution())
vo3.executeQuery();
Row row = vo.createRow();
vo3.insertRow(row);
row3.setNewRowState(Row.STATUS_INITIALIZED);
Problem: However when I use the code vo3.insertRow(row); it prompts me with the applicaiton error of JBO-26020: Attempting to insert row with no matching EO base. I don't quite understand what I am doing wrong.
Can anyone please help.
Cheers

This i have find out .
FYI...
JBO-26020: InvalidOperException
Cause: The application code tried to take a row from one row set (or view object) and insert it into another row set (view object). In response, the framework will make a "copy" of the row in the new row set. This new row will share references to the underlying entity objects. However, if the source and destination row sets do not share any entity object bases at all, this operation will fail as it does not find any entity rows to share.
Action: When attempting to take a row from one row set and insert into another, make sure that they share at least one entity object base.
Thanks

Similar Messages

  • Transient VO insert error-Attempting to insert row with no matching EO base

    Hi ,
    I have a transient Vo (created using option - rows populated programmatically, not based on Query) and I need to uptade/insert rows in vo on click of a button.
    when i nsert row, i get following error
    oracle.jbo.InvalidOperException: JBO-26020: Attempting to insert row with no matching EO base
    This is what I am doing in my code
    ViewObject vo2 = am.findViewObject("TransientVO1");
    vo2.executeQuery();
    if (vo2 == null) {System.out.println("vo2 is null");}
    if (vo2 != null)
    System.out.println("in vo2 != null");
    Row row2 = vo2.createRow();
    row2.setAttribute("PlatformName", "ss");
    row2.setAttribute("UserName", "ss");
    vo.insertRow(row2);
    System.out.println(" vo2.getRowCount()"+ vo2.getRowCount());
    Why is it saying no EO base... is it mandatory to have EO for transient VO? Please help.
    Thanks

    The EO handles all DML, hence you need it if you have to set attributes in a VO. An EO handles the storage of a the single row (or part if your VO consists of multiple tables).
    You can try and overwrite the setter method of the attributes in ViewRowImpl class and store the changes somewhere else.
    Timo

  • Is it possible to insert row with timestamp field without to TO_TIMESTAMP

    hello
    is it possible to insert row with timestamp column without using to_timestamp unction
    somthing like insert into app.master values (3,333, 'inser tmstmp', 6.7, '2010-11-10 15:14', 'f','9','2010-12-22')

    784633 wrote:
    hello
    is it possible to insert row with timestamp column without using to_timestamp unction
    somthing like insert into app.master values (3,333, 'inser tmstmp', 6.7, '2010-11-10 15:14', 'f','9','2010-12-22')If you don't like the answers in your previous thread (Re: how can i set timestamp format don't expect to get different answers just because you start a new thread.

  • Insert row with same formatted cells

    I am a newbye with Numbers.
    I have created a spreadsheet with some columns and every cell formatted, such as a list or a box to check.
    Until now every time I have inserted a new row the system create a row with the same formattated cells,
    now the system insert a blank row without formattated cells.
    Please, help me! Thanks.

    Vin,
    Being new to Numbers, you should read the Numbers User Guide, available as a free download from the help menu.
    The problem you are experiencing may be in another column. The condition that Barry mentioned, having the same expression or special format in every body row, applies to every column in the table.
    Jerry

  • Strange Behaviour: Inserting Rows with OrdVideoDomain using JDeveloper

    Dear Sirs...
    i created two tables each containing OrdVideoDomainField.
    i use the same function to fill the rows with values. the code is like this:
    ViewObject V=GetViewObject(V);
    Row R=V.CreateRow();
    byte b[]=new byte[10];
    OrdVideoDomain O=new OrdVideoDomain(b);
    R.setAttribute("f",O);
    R.setAttribute("name",AnyName);
    V.insertRow(R);
    R=null;
    GetTransaction.postChanges(); // gets the appmodule and then gets the transaction object within and finally posting the change
    GetTransaction.commit();
    When i use the function of the viewobject A, all the data is stored correctly when dealing with table A. But when dealing with table B, all the data are stored correctly but the OrdVideoDomain field is filled with null. i get no error at all.
    i checked the names of the fields in the tables, and they are correct.
    i tried to upload files into both tables and these are working perfectly fine.
    i tried to get the data from both tables and they are working perfectly fine.
    the problem is only when i store data programatically into the table b.
    does any one have a similar problem?
    how to solve it?
    i am using ADF UIX in jdeveloper 10g 10.1.2 with oracle database 10g release 2 and both are under windows.
    thanks for any help in advance
    best regards

    Sorry, i have found the problem, it is a programming error
    best regards

  • Insert row with datapages/bc4j  problem with primary key

    Hi everybody,
    i tryed to insert a new row into a table with primary key (id) and therfore used a datapage, where there is a html-form and the data tag set attribute to get the data into the BC.
    I also want to use a sequence for the primary key and made a trigger to insert the key-value before insert. but in this case it doesnt work. I also tryed to get the sequence to the BC -Layer (so that i can set the PK in the View OBJ already) with a View Object but I dont know how.
    so what schould i do??
    thanxx
    Martin

    There's a know issue, when creating a record with blob, the blob content won't show until committing. The blob is added too late, which means you're in trouble with not-null fields...
    Sue, is this logged as a bug? And the dialog captions?
    K.

  • How to use insert row with BLOB to Oracle when use connection pool?

    Hi, All,
    I am writing a program to store files (mapped to be a column with BLOB datatype
    in the table) to Oracle database.
    But I always get java.lang.ClassCastException:weblogic.jdbc.rmi.SerialBlob
    Here is my code, please help. Thanks a lot!!
    String sqlNewRow = "insert into documents (id, companyid, updatedate, description,
    document, addby, title) ";
    sqlNewRow += "values (?, ?, TO_DATE(?, 'MM/DD/YY'), ?, EMPTY_BLOB(), ?,
    con.setAutoCommit(false);
    ps = con.prepareStatement(sqlNewRow);
    ps.setInt(1, documentid);
    ps.setInt(2, companyid);
    ps.setString(3, updatedate);
    ps.setString(4, description);
    ps.setString(5, username);
    ps.setString(6, filename);
    ps.executeUpdate();
    ps.close();
    String sqlLockRow = "select document from documents where id = ? for update";
    java.sql.PreparedStatement pst = con.prepareStatement(sqlLockRow);
    pst.setInt(1, documentid);
    java.sql.ResultSet rset = pst.executeQuery();
    rset.next();
    java.sql.Blob dbBlob = rset.getBlob(1);
    out.println("it's=" + dbBlob.getClass());
    OutputStream dbBlobOut = ((weblogic.jdbc.vendor.oracle.OracleThinBlob)dbBlob).getBinaryOutputStream();
    dbBlobOut.write(oneString.getBytes());
    dbBlobOut.close();
    rset.close();
    pst.close();

    Have you defined
    OutputStream dbBlobOut
    as weblogic.jdbc.vendor.oralce.OracleThinBlob?
    Mitesh
    Almond wrote:
    Hi, All,
    I am writing a program to store files (mapped to be a column with BLOB datatype
    in the table) to Oracle database.
    But I always get java.lang.ClassCastException:weblogic.jdbc.rmi.SerialBlob
    Here is my code, please help. Thanks a lot!!
    String sqlNewRow = "insert into documents (id, companyid, updatedate, description,
    document, addby, title) ";
    sqlNewRow += "values (?, ?, TO_DATE(?, 'MM/DD/YY'), ?, EMPTY_BLOB(), ?,
    con.setAutoCommit(false);
    ps = con.prepareStatement(sqlNewRow);
    ps.setInt(1, documentid);
    ps.setInt(2, companyid);
    ps.setString(3, updatedate);
    ps.setString(4, description);
    ps.setString(5, username);
    ps.setString(6, filename);
    ps.executeUpdate();
    ps.close();
    String sqlLockRow = "select document from documents where id = ? for update";
    java.sql.PreparedStatement pst = con.prepareStatement(sqlLockRow);
    pst.setInt(1, documentid);
    java.sql.ResultSet rset = pst.executeQuery();
    rset.next();
    java.sql.Blob dbBlob = rset.getBlob(1);
    out.println("it's=" + dbBlob.getClass());
    OutputStream dbBlobOut = ((weblogic.jdbc.vendor.oracle.OracleThinBlob)dbBlob).getBinaryOutputStream();
    dbBlobOut.write(oneString.getBytes());
    dbBlobOut.close();
    rset.close();
    pst.close();

  • Update of JTable after inserting row with beans binding

    I have a little problem. When i create a little app with netbeans which uses the beansbinding with a table it is not possible to get updates of the list into the table.
    i use nearly the same methods as if i create a database application with the wizzard. The only difference i see (so far) is that i don't use the Swing application framework.
    if i try to repaint the table or the ScrollPane, nothing happens. The list is changed but not the table....

    You should be updating the TableModel, not the "list". When you update the model it will notify the table to repaint itself.

  • How to get the inserted row primary key with out  using select statement

    how to return the primary key of inserted row ,with out using select statement
    Edited by: 849614 on Apr 4, 2011 6:13 AM

    yes thanks to all ,who helped me .its working fine
    getGeneratedKeys
    String hh = "INSERT INTO DIPOFFERTE (DIPOFFERTEID,AUDITUSERIDMODIFIED)VALUES(DIPOFFERTE_SEQ.nextval,?)";
              String generatedColumns[] = {"DIPOFFERTEID"};
              PreparedStatement preparedStatement = null;
              try {
                   //String gen[] = {"DIPOFFERTEID"};
                   PreparedStatement pstmt = conn.prepareStatement(hh, generatedColumns);
                   pstmt.setLong(1, 1);
                   pstmt.executeUpdate();
                   ResultSet rs = pstmt.getGeneratedKeys();
                   rs.next();
    //               The generated order id
                   long orderId = rs.getLong(1);

  • Unexpected PX_TXN insert row Error?

    The following error prints, at random, on my uix page. Has anyone experienced it or know how to redirect it from the Browser:
    oracle.jbo.PCollException: JBO-28030: Could not insert row into table PS_TXN, collection id 19,028, persistent id -1
         void oracle.jbo.PCollException.throwException(java.lang.Class, java.lang.String, java.lang.Object[], java.lang.Exception)
              PCollException.java:39
         void oracle.jbo.pcoll.OraclePersistManager.insert(long, long, int, oracle.jbo.pcoll.PCollKeyInfo[], byte[])
              OraclePersistManager.java:1609
         boolean oracle.jbo.pcoll.PCollNode.passivateElem(oracle.jbo.pcoll.PCollPersistable, oracle.jbo.pcoll.PCollNode, oracle.jbo.pcoll.PCollection, long)
              PCollNode.java:543
         boolean oracle.jbo.pcoll.PCollNode.passivate()
              PCollNode.java:674
         boolean oracle.jbo.pcoll.PCollNode.passivateBranch()
              PCollNode.java:617
         long oracle.jbo.pcoll.PCollection.passivate()
              PCollection.java:429
         int oracle.jbo.server.DBSerializer.passivateRootAM(int, byte[])
              DBSerializer.java:256
         int oracle.jbo.server.DBSerializer.passivateRootAM(byte[])
              DBSerializer.java:239
         int oracle.jbo.server.ApplicationModuleImpl.passivateState(byte[])
              ApplicationModuleImpl.java:3848
         void oracle.jbo.common.ampool.ApplicationPoolImpl.doFailover(oracle.jbo.ApplicationModule, oracle.jbo.common.ampool.SessionCookie, boolean)
              ApplicationPoolImpl.java:2423
         void oracle.jbo.common.ampool.ApplicationPoolImpl.doFailover(oracle.jbo.ApplicationModule, oracle.jbo.common.ampool.SessionCookie)
              ApplicationPoolImpl.java:2375
         void oracle.jbo.common.ampool.ApplicationPoolImpl.doManagedCheckin(oracle.jbo.common.ampool.SessionCookie, boolean)
              ApplicationPoolImpl.java:1657
         void oracle.jbo.common.ampool.ApplicationPoolImpl.releaseApplicationModule(oracle.jbo.common.ampool.SessionCookie, int)
              ApplicationPoolImpl.java:1031
         void oracle.jbo.common.ampool.SessionCookieImpl.releaseApplicationModule(int, long)
              SessionCookieImpl.java:576
         void oracle.jbo.http.HttpSessionCookieImpl.releaseApplicationModule(int, long)
              HttpSessionCookieImpl.java:216
         void oracle.jbo.common.ampool.SessionCookieImpl.releaseApplicationModule(boolean, boolean, long)
              SessionCookieImpl.java:524
         void oracle.jbo.common.ampool.SessionCookieImpl.releaseApplicationModule(boolean, boolean)
              SessionCookieImpl.java:506
         void oracle.cabo.data.jbo.servlet.RootAppModuleRegistryImpl$ReleaseRootAppModule.unbindValue()
         void oracle.cabo.share.util.BindableNamespaceMap.unbindAll()
         void oracle.cabo.servlet.BaseBajaContext.dispose()
         oracle.cabo.servlet.Page oracle.cabo.servlet.PageBrokerHandler.handleRequest(oracle.cabo.servlet.BajaContext)
         void oracle.cabo.servlet.UIXServlet.doGet(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
         void oracle.cabo.servlet.UIXServlet.doPost(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
         void javax.servlet.http.HttpServlet.service(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
              HttpServlet.java:760
         void javax.servlet.http.HttpServlet.service(javax.servlet.ServletRequest, javax.servlet.ServletResponse)
              HttpServlet.java:853
         void com.evermind[Oracle9iAS (9.0.3.0.0) Containers for J2EE].server.http.ServletRequestDispatcher.invoke(javax.servlet.ServletRequest, javax.servlet.ServletResponse)
              ServletRequestDispatcher.java:721
         void com.evermind[Oracle9iAS (9.0.3.0.0) Containers for J2EE].server.http.ServletRequestDispatcher.forwardInternal(javax.servlet.ServletRequest, javax.servlet.http.HttpServletResponse)
              ServletRequestDispatcher.java:306
         boolean com.evermind[Oracle9iAS (9.0.3.0.0) Containers for J2EE].server.http.HttpRequestHandler.processRequest(com.evermind[Oracle9iAS (9.0.3.0.0) Containers for J2EE].server.ApplicationServerThread, com.evermind[Oracle9iAS (9.0.3.0.0) Containers for J2EE].server.http.EvermindHttpServletRequest, com.evermind[Oracle9iAS (9.0.3.0.0) Containers for J2EE].server.http.EvermindHttpServletResponse, java.io.InputStream, java.io.OutputStream, boolean)
              HttpRequestHandler.java:767
         void com.evermind[Oracle9iAS (9.0.3.0.0) Containers for J2EE].server.http.HttpRequestHandler.run(java.lang.Thread)
              HttpRequestHandler.java:259
         void com.evermind[Oracle9iAS (9.0.3.0.0) Containers for J2EE].server.http.HttpRequestHandler.run()
              HttpRequestHandler.java:106
         void EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run()
              PooledExecutor.java:803
         void java.lang.Thread.run()
              Thread.java:484
    ## Detail 0 ##
    java.sql.SQLException: ORA-00001: unique constraint (EPIC.PS_TXN_PK) violatedORA-06512: at line 1
         void oracle.jdbc.dbaccess.DBError.throwSqlException(java.lang.String, java.lang.String, int)
              DBError.java:187
         void oracle.jdbc.ttc7.TTIoer.processError()
              TTIoer.java:241
         void oracle.jdbc.ttc7.Oall7.receive()
              Oall7.java:543
         void oracle.jdbc.ttc7.TTC7Protocol.doOall7(byte, byte, int, byte[], oracle.jdbc.dbaccess.DBType[], oracle.jdbc.dbaccess.DBData[], int, oracle.jdbc.dbaccess.DBType[], oracle.jdbc.dbaccess.DBData[], int)
              TTC7Protocol.java:1477
         int oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(oracle.jdbc.dbaccess.DBStatement, byte, byte[], oracle.jdbc.dbaccess.DBDataSet, int, oracle.jdbc.dbaccess.DBDataSet, int)
              TTC7Protocol.java:888
         void oracle.jdbc.driver.OracleStatement.executeNonQuery(boolean)
              OracleStatement.java:2004
         void oracle.jdbc.driver.OracleStatement.doExecuteOther(boolean)
              OracleStatement.java:1924
         void oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout()
              OracleStatement.java:2562
         int oracle.jdbc.driver.OraclePreparedStatement.executeUpdate()
              OraclePreparedStatement.java:452
         boolean oracle.jdbc.driver.OraclePreparedStatement.execute()
              OraclePreparedStatement.java:526
         void oracle.jbo.pcoll.OraclePersistManager.insert(long, long, int, oracle.jbo.pcoll.PCollKeyInfo[], byte[])
              OraclePersistManager.java:1593
         boolean oracle.jbo.pcoll.PCollNode.passivateElem(oracle.jbo.pcoll.PCollPersistable, oracle.jbo.pcoll.PCollNode, oracle.jbo.pcoll.PCollection, long)
              PCollNode.java:543
         boolean oracle.jbo.pcoll.PCollNode.passivate()
              PCollNode.java:674
         boolean oracle.jbo.pcoll.PCollNode.passivateBranch()
              PCollNode.java:617
         long oracle.jbo.pcoll.PCollection.passivate()
              PCollection.java:429
         int oracle.jbo.server.DBSerializer.passivateRootAM(int, byte[])
              DBSerializer.java:256
         int oracle.jbo.server.DBSerializer.passivateRootAM(byte[])
              DBSerializer.java:239
         int oracle.jbo.server.ApplicationModuleImpl.passivateState(byte[])
              ApplicationModuleImpl.java:3848
         void oracle.jbo.common.ampool.ApplicationPoolImpl.doFailover(oracle.jbo.ApplicationModule, oracle.jbo.common.ampool.SessionCookie, boolean)
              ApplicationPoolImpl.java:2423
         void oracle.jbo.common.ampool.ApplicationPoolImpl.doFailover(oracle.jbo.ApplicationModule, oracle.jbo.common.ampool.SessionCookie)
              ApplicationPoolImpl.java:2375
         void oracle.jbo.common.ampool.ApplicationPoolImpl.doManagedCheckin(oracle.jbo.common.ampool.SessionCookie, boolean)
              ApplicationPoolImpl.java:1657
         void oracle.jbo.common.ampool.ApplicationPoolImpl.releaseApplicationModule(oracle.jbo.common.ampool.SessionCookie, int)
              ApplicationPoolImpl.java:1031
         void oracle.jbo.common.ampool.SessionCookieImpl.releaseApplicationModule(int, long)
              SessionCookieImpl.java:576
         void oracle.jbo.http.HttpSessionCookieImpl.releaseApplicationModule(int, long)
              HttpSessionCookieImpl.java:216
         void oracle.jbo.common.ampool.SessionCookieImpl.releaseApplicationModule(boolean, boolean, long)
              SessionCookieImpl.java:524
         void oracle.jbo.common.ampool.SessionCookieImpl.releaseApplicationModule(boolean, boolean)
              SessionCookieImpl.java:506
         void oracle.cabo.data.jbo.servlet.RootAppModuleRegistryImpl$ReleaseRootAppModule.unbindValue()
         void oracle.cabo.share.util.BindableNamespaceMap.unbindAll()
         void oracle.cabo.servlet.BaseBajaContext.dispose()
         oracle.cabo.servlet.Page oracle.cabo.servlet.PageBrokerHandler.handleRequest(oracle.cabo.servlet.BajaContext)
         void oracle.cabo.servlet.UIXServlet.doGet(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
         void oracle.cabo.servlet.UIXServlet.doPost(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
         void javax.servlet.http.HttpServlet.service(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
              HttpServlet.java:760
         void javax.servlet.http.HttpServlet.service(javax.servlet.ServletRequest, javax.servlet.ServletResponse)
              HttpServlet.java:853
         void com.evermind[Oracle9iAS (9.0.3.0.0) Containers for J2EE].server.http.ServletRequestDispatcher.invoke(javax.servlet.ServletRequest, javax.servlet.ServletResponse)
              ServletRequestDispatcher.java:721
         void com.evermind[Oracle9iAS (9.0.3.0.0) Containers for J2EE].server.http.ServletRequestDispatcher.forwardInternal(javax.servlet.ServletRequest, javax.servlet.http.HttpServletResponse)
              ServletRequestDispatcher.java:306
         boolean com.evermind[Oracle9iAS (9.0.3.0.0) Containers for J2EE].server.http.HttpRequestHandler.processRequest(com.evermind[Oracle9iAS (9.0.3.0.0) Containers for J2EE].server.ApplicationServerThread, com.evermind[Oracle9iAS (9.0.3.0.0) Containers for J2EE].server.http.EvermindHttpServletRequest, com.evermind[Oracle9iAS (9.0.3.0.0) Containers for J2EE].server.http.EvermindHttpServletResponse, java.io.InputStream, java.io.OutputStream, boolean)
              HttpRequestHandler.java:767
         void com.evermind[Oracle9iAS (9.0.3.0.0) Containers for J2EE].server.http.HttpRequestHandler.run(java.lang.Thread)
              HttpRequestHandler.java:259
         void com.evermind[Oracle9iAS (9.0.3.0.0) Containers for J2EE].server.http.HttpRequestHandler.run()
              HttpRequestHandler.java:106
         void EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run()
              PooledExecutor.java:803
         void java.lang.Thread.run()
              Thread.java:484

    The error itself is a BC4J question you should post on the jdev forum. If you want to shield users from seeing these you can use the try and displayException beans.

  • Sybase Error 2601 Attempt to insert duplicate key row in object with unique

    RE: Sybase Error 2601 Attempt to insert duplicate key row in object with unique index.
    Hi Folks,
    I'm getting the following error whilst executing a stored procedure in Sybase.
    ERROR: Sybase Error 2601 Attempt to insert duplicate key row in object with unique index.
    I understand that duplicate values have been inserted into a column that has a unique constraint.
    I just can't figure out how to rectify the problem.
    Your help will be greatly appreciated!
    Many thanks in advance.

    If the value I'm trying to insert (using update)
    already exists in the unique-value field then the DB
    refuses to update the field.
    If the value is different it will update.Are you trying to insert or update in SQL (identified by the keyword INSERT or UPDATE respectively)?
    Even in case of an UPDATE query, if you are going to update the values of some columns to violate the unique constraints, the update will not succeed and you will get the error message.
    or is it?
    it tries to create a new row, but can't because there
    is another row with the same unique-values.
    If this is the case, I am only trying to update and
    not create a new item.To put it in simpler words, if you have a set of values defining the uniqueness of a record, you cannot insert another record with the same set of unique values. Similarly, you cannot update an existing record by modifying the set to conflict with another set of unique values which already exist in the database.
    Suppose there are two columns A and B defining the uniqueness of the record and you have only two records at the moment like -
    A B
    ========
    1 1
    2 1
    If you try to insert a record with A = 1 and B = 1, it will fail because a record already exists. You cannot violate uniqueness because the database has already been told that there will be only one record for any given combination of A and B.
    Similarly, if you try to update the second record from A = 2 to A = 1, the end result would be A =1 and B = 1. There is already a record with that set of values and this will result in a violation of the uniqueness. So, this update will also be disallowed. On the other hand, if you try to update B to some value, say 3, there is no problem in doing so.
    For convenience, you can imagine an UPDATE operation to be equivalent to DELETE + INSERT operation, though it doesn't necessarily work the same way internally.
    I hope I was clear enough.

  • JBO-25014: Another user has changed the row with primary key oracle.jbo.Key

    Hi,
    I am developing a Fusion Web Application using Jdeveloper 11.1.2.1.0. I have a home.jspx page that has a ADF table built on efttBilling View Object. . When you click on one of the rows in the table, it will take you to detail.jspx where you can edit the row and save. When 'save' is clicked, stored procedures are executed to update/insert rows into few tables , and then go back to home.jspx where you need to see updated content for that row.
    To get down to the exact issue, updates are made to the tables on which the efttBilling View Object is built using a stored procedure. Once this is done, I am trying to requery view object to see new content. But I keep getting JBO-25014: Another user has changed the row with primary key oracle.jbo.Key error. Following are the approaches I followed to query new results:
    a. Executed Application Modules Commit Method. Created 'Commit' Action binding and tied it to homePageDef.xml. Called this binding from a view scope bean.
        BindingContainer bindings = BindingContext.getCurrent().getCurrentBindingsEntry();
         OperationBinding operationBinding = bindings.getOperationBinding("Commit");
        Object result = operationBinding.execute();
       if (!operationBinding.getErrors().isEmpty())
        return null;
    b. Marked 'Refresh on Insert' , 'Refresh on Update', 'Change Indicator' checkboxes for all the attributes in the entities associated with efttBilling View Object.
    c. Tried to Requery View Object. Created a refreshViewObject method in Application Module Impl.java file, exposed this method to the client interface and created a invokeMethod Action binding in home.jspx
    Code in Application Module:
      public void refresheftTransactionsforBillingAccountViewObj1View()
        System.out.println("In eftTransactionsforBillingAccountViewObj1");
      findViewObject("eftTransactionsforBillingAccountViewObj1").executeQuery();
    Code in view scope bean
            DCBindingContainer bindings =
           (DCBindingContainer)BindingContext.getCurrent().getCurrentBindingsEntry();
            OperationBinding operation =
            bindings.getOperationBinding("refresheftTransactionsforBillingAccountViewObj1View");
            operation.execute();
    I have searched web, ADF forums and tried methods suggested in there but no sucess.
    Could anyone please provide some insight in this issue. I have been battling with this since quite some time. I can provide you with the log file too.
    Thanks!
    Shai.

    What code does your Commit method have .. can you try using the Commit executable from the AM itself instead ?
    Also -
    Shai wrote:
    'Change Indicator' checkboxes for all the attributes in the entities associated with efttBilling View Object.
    which all attributes you set this property for . it should just be for History columns as such.
    Did you also check if this could be your scenario ?
    Decompiling ADF Binaries: Yet another reason for "JBO-25014: Another user has changed the row with primary key orac…
    OR
    JBO-25014: Another user has changed the row with primary key oracle.jbo.Key
    OR
    Another user has changed the row with primary key -Table changed externally
    Message was edited by: SudiptoDesmukh

  • JBO-25014: Another user has changed the row with primary key...

    Hello,
    could you help me please with resolving this error "JBO-25014: Another user has changed the row with primary key..." - I am just getting a row from a view by bind "filter" variable, then I am assigning new values for some of the attributes - and trying to commit ..unsuccessfully..
    View is based on Entity.
    I saw directive for setting Entity's attributes as "update after insert / update" - but this did not help me.
    Thanks in advance.

    Hi
    Please try this solutions:
    One solution is to change the ADF BC locking behavior to optimistic instead of pessimistic. Choose the AM and click the Configuration context menu option. Select the LocalAM entry and go to the Properties. Scroll down to the locking setting and change the existing entry
    If there is a trigger changing values, you need to mark those attributes (the ones that may be changed) as refresh after insert and/or refresh after update in your Entity Object.

  • JBO-27102: Attempt to access dead view row of persistent id 5,174

    Hi all, We are getting dead access view exception frequently ..
    Please help us with some pointers.
    Sreeni
    ####<Jul 18, 2012 11:48:39 AM PDT> <Warning> <oracle.adfinternal.view.faces.model.binding.FacesCtrlLOVBinding> <plwcappuat01> <WLS_Custom1> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <274945> <> <004lHwST_dA2ZNK5qV4EyY0003S3001E1R> <1342637319098> <BEA-000000> <ViewCriteriaItem for lov attribute not found.>
    ####<Jul 18, 2012 11:48:49 AM PDT> <Warning> <oracle.adfinternal.view.faces.lifecycle.LifecycleImpl> <plwcappuat01> <WLS_Custom1> <[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'> <274945> <> <004lHwT3wxZ2ZNK5qV4EyY0003S3001E1^> <1342637329381> <BEA-000000> <ADF_FACES-60098:Faces lifecycle receives unhandled exceptions in phase RESTORE_VIEW 1
    oracle.jbo.DeadViewRowAccessException: JBO-27102: Attempt to access dead view row of persistent id 5,174
    at oracle.jbo.server.ViewRowImpl.useInner(ViewRowImpl.java:315)
    at oracle.jbo.server.ViewRowImpl.getEntityCount(ViewRowImpl.java:3352)
    at oracle.jbo.server.ViewRowImpl.setNewRowState(ViewRowImpl.java:4969)
    at oracle.jbo.server.ViewObjectImpl.initializeActivatedNewRows(ViewObjectImpl.java:18237)
    at oracle.jbo.server.ApplicationModuleImpl.activateVOs(ApplicationModuleImpl.java:8178)
    at oracle.jbo.server.ApplicationModuleImpl.doActivateState(ApplicationModuleImpl.java:7918)
    at oracle.jbo.server.ApplicationModuleImpl.doActivateState(ApplicationModuleImpl.java:7950)
    at oracle.jbo.server.ApplicationModuleImpl.doActivateAMState(ApplicationModuleImpl.java:7884)
    at oracle.jbo.server.Serializer.activate(Serializer.java:296)
    at oracle.jbo.server.DBSerializer.activateRootAM(DBSerializer.java:330)
    at oracle.jbo.server.ApplicationModuleImpl.activateState(ApplicationModuleImpl.java:6207)
    at oracle.jbo.server.ApplicationPoolMessageHandler.doPoolMessage(ApplicationPoolMessageHandler.java:224)
    at oracle.jbo.server.ApplicationModuleImpl.doPoolMessage(ApplicationModuleImpl.java:8933)
    at oracle.jbo.common.ampool.ApplicationPoolImpl.sendPoolMessage(ApplicationPoolImpl.java:4496)
    at oracle.jbo.common.ampool.ApplicationPoolImpl.prepareApplicationModule(ApplicationPoolImpl.java:2458)
    at oracle.jbo.common.ampool.ApplicationPoolImpl.doCheckout(ApplicationPoolImpl.java:2270)
    at oracle.jbo.common.ampool.ApplicationPoolImpl.useApplicationModule(ApplicationPoolImpl.java:3168)
    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:516)
    at oracle.adf.model.bc4j.DCJboDataControl.getApplicationModule(DCJboDataControl.java:864)
    at oracle.adf.model.bc4j.DCJboDataControl.initializeApplicationModule(DCJboDataControl.java:525)
    at oracle.adf.model.bc4j.DCJboDataControl.beginRequestInternal(DCJboDataControl.java:2061)
    at oracle.adf.model.bc4j.DCJboDataControl.beginRequest(DCJboDataControl.java:2036)
    at oracle.adf.model.BindingContext.setCurrentDataControlFrame(BindingContext.java:2084)
    at oracle.adfinternal.controller.util.model.DCFrameImpl.makeCurrent(DCFrameImpl.java:129)
    at oracle.adfinternal.controller.state.ViewPortContextImpl.makeCurrent(ViewPortContextImpl.java:1008)
    at oracle.adfinternal.controller.state.RequestState.setCurrentViewPortContext(RequestState.java:201)
    at oracle.adfinternal.controller.state.ControllerState.setRequestState(ControllerState.java:948)
    at oracle.adfinternal.controller.state.ControllerState.synchronizeStatePart1(ControllerState.java:360)
    at oracle.adfinternal.controller.application.SyncNavigationStateListener.beforePhase(SyncNavigationStateListener.java:128)
    at oracle.adfinternal.controller.lifecycle.ADFLifecycleImpl$PagePhaseListenerWrapper.beforePhase(ADFLifecycleImpl.java:552)
    at oracle.adfinternal.controller.lifecycle.LifecycleImpl.internalDispatchBeforeEvent(LifecycleImpl.java:100)
    at oracle.adfinternal.controller.lifecycle.LifecycleImpl.dispatchBeforePagePhaseEvent(LifecycleImpl.java:150)
    at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener$PhaseInvokerImpl.dispatchBeforePagePhaseEvent(ADFPhaseListener.java:115)
    at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener.beforePhase(ADFPhaseListener.java:59)
    at oracle.adfinternal.controller.faces.lifecycle.ADFLifecyclePhaseListener.beforePhase(ADFLifecyclePhaseListener.java:45)
    at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:278)
    at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:185)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
    at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)

    Hi,
    first thing to check is "5,174". For an ID this sounds strange as you would expect IDs to be Number, Integer or anything else without a comma in it
    Btw.: have you tried Googling for this string: attempt to access dead view row of persistent id
    There are many hits for this query that you can have a look at
    JBO-27102: DeadViewRowAccessException
    Cause: Trying to access a ViewRow which is part of an obsolete/invalid collection. This could happen if a reference to the ViewRow is held by some business logic while the containing view object was removed.
    Action: Find the referenced ViewRow either by re-querying or using findByKey methods to get a valid reference to the ViewRow.
    Frank

  • I am trying to insert rows for alert_id 22 with diff abc_id and xyz_id

    I am trying to insert rows for alert_id 22 with diff abc_id and xyz_id
    these inserts will store in two tables that I have to join in the cursor.
    I have written cursor without passing cursor parameters. but here i need to pass acb_id and xyz_id along with alert_id.
    then if these are saticified with alert_id 22 then I want to stop the loop run, else i need to continue the loop. bcause the abc_id and xyz_id are diff for alert_id 22
    This is the issue I am facing!
    Please let me know if you have any idea. Let me know how to use cursor parameters here and in loop.
    Sample proc like this::
    Declare
    main_cursor
    another_cur
    alert_cur
    begin
    need to check first abc_id,xyz_id is already exist with alert_id 22
    if this set of records already exists then
    exit from the loop
    else
    continue with
    loop
    here coming the insert statements with different condition getting from first two cursors.(this part is ok for me)
    end loop
    end if
    Please write the logic if any idea on this.
    -LRK

    I want to stop if already alert_id is exist!

Maybe you are looking for

  • Trackpad on White Macbook

    Hello, I recently bought a white macbook last week and let me say Im pleased with the product. Ive been an apple user for many years but never had my own mac, but now I do. So i have been reading in previous posts about the trackpad and cleaning the

  • Httpd startup problem

    iAS 9i on Sun Solaris Oracle 8i (8.1.6) on W2000 http port = 7777 After installing iAS 9i on Sun Solaris, i get startup problem with Apache http: 'Syntax error on line 14 of /export/home/ias/isuites/Apache/Apache/conf/mod__ose.conf: AuroraService - d

  • BB Desktop Software v5.0.1

    I just downloaded the update for 5.0.1 and I saw the new icon for the IP MODEM. As soon as I plugged my BB Bold to the computer it automatically installed the driver and the icon for the IP MODEM on the BB Desktop Manager is no where to be found. How

  • How can i use 3D Features with 256 VRAM

    How can i use 3D Features with 256 VRAM

  • DMP Error when in Business Partner Master Data

    Forum, I have one client which produces DMP errors each time they go into the Business Partner Master Data screen. This is since they have been upgraded to 8.8 PL20. Prior to this, there was no such issue. The spec of the machine is as follows: Xp Sp