BC4J/UIX Multi Entity insert/update

Hi!
Problem
Is it possible to insert simultaneously both master and detail BC4J row with single UIX page? I would like to use standard UIX if possible with minimal java, but examples with java would be also helpful.
Example
This seems to be a very simple situation. Has anybody solved it?
In my case I have one generic Document table and additional attributes tables for different kinds of documents like for instance LicenseDocument. Those tables are connected with Document table with 1 to 0..1 relationship and their foreign key to the Document table is also their primary key.
I like the way that BC4J Tester works and I don't know how to make UIX work the same way.
When I use BC4J Tester it assigns the Document table inserted but not yet committed rows primary key (DBSequence) column temporary negative values and I can insert child records that are associated with it. After commit the Document primary key is fetched from the database sequence and all the foreign keys in other tables get updated accordingly.
When I use UIX I don't get those temporary IDs and so I can't create child records before the master record is committed. This is not good as I can't roll back the whole creation of the LicenceDocument.
References
I started by posting this topic to UIX forum (BC4J Multi Entity insert/update but maybe someone here knows the solution.
Thanks in advance!
Mihkel N�ges
[email protected]

I managed to workaround the issue in UIX by not using DBSequence type but fetching the sequence value in EntityImpl create method (as in Steve Muench's Techiniques demo project http://radio.weblogs.com/0118231/stories/2003/07/11/codeSampleIllustratingVariousBc4jProgrammingTechniques.html ):
DocumentImpl.java:
protected void create(AttributeList attributeList)
     super.create(attributeList);
     // Do this last so we don't waste any sequence numbers unnecessarily
     SequenceImpl seq = new SequenceImpl("DOCUMENT_ID_SEQ",getDBTransaction());
     setId(seq.getSequenceNumber());
For some reason the sequence gets asked twice for every row creation. Thats not a big problem, but in the SequenceImpl javadoc this is discussed and as I understand it should not happen.

Similar Messages

  • Multi-Row insert/update/delete not working via db-link

    App. Version: 2.0.0.00.49
    DB: Oracle 9i, not sure about the build
    Problem: Multirow Update/Insert/Delete doesn't work via db-link.
    Error received: ....ORA-1460: unimplemented or unreasonable conversion requested....
    Where: Tabular Form generated via Wizard
    Side note: It's working properly when local table(s) is/are used, it's not working via db-link or view.
    I've encountered this error with single update/insert/delete operations before, but was able to fix it via using temp-variables (v_xyz := :Px_xyz; as the proposed v('Px_xyz') was really slow with my scripts)...but with the automated DML-action I don't see a way to edit it accordingly.
    Workaround found:
    1a) Use local* collection on HTML-DB-Server, then write single row updates/deletes/inserts to the remote DB via DB-Link
    1b) Use local* table on HTML-DB-Server, then write single row updates/deletes/inserts to the remote DB via DB-Link
    * Local = on the same server that HTML-DB is running on...
    So,...to my questions:
    1. Can someone confirm that this is a "known feature" (aka bug)?
    2. Can someone tell me if this "known feature" has been eliminated in the newer version of HTML-DB/APEX (> 2.0.0.00.49)?
    Thanks.
    Ingo

    Hi,
    Do you have a small test case program that demonstrates this? A JDeveloper project showing what exactly is the problem when trying to use the BDB SQL JDBC driver to insert data into the BDB SQL database? What do you mean by "not working", do you get any errors, you do not get errors but you do not see the data in the database etc?
    What are the versions of Java, JDeveloper, ADF and BDB SQL you are using, and on what OS?
    Regards,
    Andrei

  • BC4J under TOMCAT 403 Insert/Update probs

    Hi,
    My JSP application works fine in JDeveloper 9i (9.0.2). Deployed under Tomcat 4.0.3 everything is ok too except when I try to update/insert records.
    I get
    Class oracle/jbo/AttributeDef violates loader constraints
    The problem seems to be in the SetAttribute datatags in the Row component when updating/inserting.
    Anyone had teh same prob? What lib/jar whatever am I missing?
    All help will be very much appreciated
    Thnx
    Eric

    Problem solved. I copied all the jar's which should be (according the JDev help) in the lib directory under Tomcat home to the application specific WEB-INF/lib directory.
    Regards
    Eric

  • Issues in Table with Multi-Row Insert

    I have created a master detail screens using jheadstart on 2 separate pages, Master in the Form layout and detail in the Table Layout with multi-row insert, update and delete flags ON. Have set the New Rows count = 2.
    Issue 1
    If I try to delete any existing rows, it gives error for new rows saying value is required for the mandatory fields. It should just ignore the new rows if I have not updated any values for any attributes in the those row(As it does for non Master-Detail Table layout). I guess this might be happening because the jheadstart code is setting the foreign key for new rows the detail, but not resetting the status of the rows back to INITIALIZED.
    I also noticed that the create() of underlying EO is getting called for those blank rows when I click on 'Save' button, even if I have not changed any data in those rows.
    Issue 2
    When I try to select the new rows also for deletion, I am getting a '500 Internal Server Error' with following stack trace... This is also happening for normal (non Master-Detail) Table layout.
    java.lang.IllegalStateException: AdfFacesContext was already released or had never been attached.     at oracle.adf.view.faces.context.AdfFacesContext.release(AdfFacesContext.java:342)     at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:253)     at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:87)
    Issue 3
    I have put some validation code in the validate() method in the MyEntityImpl.java class.
    The validate method seems tobe getting called lots of times, in my case 20 times, where the new rows are just 2.
    Environment:
    Jdeveloper 10.1.3, JHeadStart 10.1.3 build 78, Windows XP
    thanks

    Thanks for the reply.
    Issue 1:
    What I have observed that in case of multi-row select enabled tables, the blank rows do not have any data. This is because the EO's create() method is called only when we post the data using 'Save' button. Thus the Foreign Keys are also not setup. This is a correct behavior since create() and FK setups etc should get done only if the user has inputted any value in the new rows and thus intend to insert new data into the table.
    I am able to find the exact cause of this issue. It is happening because in the details table, I have a column which needs tobe shown as checkbox. Since we can only bind checkbox to an Boolean attribute in VO, I have created a transient attribute of type Boolean, which basically calls the getter/setter of actual attribute doing the String "Y"/"N" to true/false conversion. Here is code for the transient attribute getter/setter
    public Boolean getDisplayOnWebBoolean() {
    return "Y".equals(getDisplayOnWeb()) ? Boolean.TRUE : Boolean.FALSE;
    public void setDisplayOnWebBoolean(Boolean value) {
    if(Boolean.TRUE.equals(value))
    setDisplayOnWeb("Y");
    else
    setDisplayOnWeb("N");
    Now when I click on the "Save" button, the setter for the boolean field is getting called with the value = false and this is resulting into the row being maked as dirty and thus the validation for the required attributes is getting executed and failing.
    Issue 2:
    Confirmed that correct filter-mapping entries are present in the web.xml.
    Now when I select the new blank rows for deletion and click save, following exception is thrown:
    java.lang.ClassCastException: oracle.jheadstart.controller.jsf.bean.NewTableRowBean at oracle.jheadstart.controller.jsf.bean.JhsCollectionModel.getRowsToRemove(JhsCollectionModel.java:412) at oracle.jheadstart.controller.jsf.bean.JhsCollectionModel.doModelUpdate(JhsCollectionModel.java:604) at oracle.jheadstart.controller.jsf.lifecycle.JhsPageLifecycle.processModelUpdaters(JhsPageLifecycle.java:541) at oracle.jheadstart.controller.jsf.lifecycle.JhsPageLifecycle.validateModelUpdates(JhsPageLifecycle.java:571)
    thanks - rutwik

  • ADF UIX Forward on Successful Update

    I am working through the tutorial at:
    http://otn.oracle.com/obe/obe9051jdev/uixTutorial/lesson_UIX.htm
    I have complete the tutorial, and the way it works now there is a browse page which lists rows from the database. You can select a row and press modify, or click on new to create a new one. Both buttons take you to a modify page.
    The modify page posts back to itself. After I insert / update a record I am taken back to the modify page. Is there some way to have it forward the user back to the browse page if the insert / modification as successful and only go back to the modify page if there was a validation error?
    Nick

    you should create and event for your "Submit" button
    placed on create/modify page, the event refers to
    DataAction which must return you to browse page. Read
    the tutorial more careful.Hi, I went back through the tutorial and I don't see anything I missed. I'm new to ADF / UIX / Struts and am not sure how to even handle this or where to look.
    I want the modify form (formEmp.uix) to redisplay the form input if there was an error inserting into the database (which it does do now), and forward the user back to the browse page (browseDeptEmp.uix) if the insert / update was successful.
    If I did miss something in the tutorial please point me to the right section but looking back through I didn't spot anything.
    Thanks for your help,
    Nick

  • Bc4j bug at refresh after insert / update

    having a table and a trigger on it that fills an attribute
    in a 9i db. one can take the scott/tiger emp table and use the
    following trigger:
    create or replace trigger t_bri_emp
    before insert on emp
    for each row
    declare
    v_no number(7,2);
    begin
    select user_SEQ.nextval*100
    into v_no
         from dual;
    :new.sal := v_no;
    end;
    then creating a bc4j project with an entity object based on this table (emp)
    and a view object based on the created entity object.
    !!!! when you create the bc4j project you must set the SQL Flavor to SQL92 or OLite
    when you set the attribute settings, for the attribute the trigger is on (sal),
    to refresh after insert / update or both in the entity object you get a
    null pointer when you try to insert a new row and commit.
    java.lang.NullPointerException
         oracle.jdbc.ttc7.TTIoac oracle.jdbc.ttc7.TTCAdapter.newTTCType(oracle.jdbc.dbaccess.DBType)
         oracle.jdbc.ttc7.NonPlsqlTTCColumn[] oracle ....................
    all can be reproduced just useing the wizard and start the bc4j project with the tester
    any workaround ??

    Sven:
    I looked into your issue. It turns out your problem is caused by a bug in the system (bug #2409955).
    The bug is that for non-Oracle SQLBuilder, we are not processing refresh-on-insert and refresh-on-update attributes correctly. We end up forming an invalid SQL statement and the JDBC driver gives the obscure NullPointerException.
    Thus, until 9.0.3, you should not use refresh-on-insert/update attributes on a non-Oracle SQLBuilder.
    If you need the refresh-on-insert/update attribute, here is a possible workaround:
    1. Whenever you invoke the tester, on the first panel, click on the 'Properities' tab. In the list of properties, you should find one for 'jbo.SQLBuilder'. It will say 'SQL92'. Remove it, so that it is empty. Run test tester. Then, the tester will use Oracle SQLBuilder which will handle refresh-on-insert/update attributes correctly for you.
    2. For switching between Oracle SQLBuilder and SQL92 SQLBuilder, you can try the following:
    2a) Locate bc4j.xcfg and your Project??.jpx under your 'src' directory.
    2b) Make copies of these files.
    2c) Edit them so that you have one set for Oracle SQLBuilder and one set for SQL92 SQLBuilder. For Oracle SQLBuilder, make sure these files do NOT have entries like:
    <jbo.SQLBuilder>..</jbo.SQLBuilder> in bc4j.xcfg and
    <Attr Name="_jbo.SQLBuilder" Value="..." /> in Project??.jpx
    When there is no jbo.SQLBuilder entry, BC4J will default to Oracle.
    For SQL92, make sure you have
    <jbo.SQLBuilder>SQL92</jbo.SQLBuilder> in bc4j.xcfg and
    <Attr Name="_jbo.SQLBuilder" Value="SQL92" /> in Project??.jpx.
    Before you run, decide which SQLBuilder to use (for 9.0.2, with retrieve-on-insert/update attrs, you have no choice but to use Oracle SQLBuilder) and copy these files into your class path, e.g.,
    <jdev-install-dir>\jdev\mywork\Workspace1\Project1\classes
    When you get 9.0.3, then you should be able to switch between Oracle and SQL92 SQLBuilders freely.
    Thanks.
    Sung

  • Possible?Multi-Entity View Object with one Entity Object that is Read-only.

    I know this sounds crazy, but I would like to create a multi-entity view object, where one entity object is based on a table in my application (we'll call it "Users", which basically stores the primary key for the person from the institutional people database), and the other table is a entity object based on a view of the institutional people database table (read only access), which we can call "People".
    I know that since no updates will be done to the People table, it really should be a read-only View Object, but I would lose the ability to sort on attributes like Last Name, Hire date, etc, since those would be transient attributes in my ViewObject for the Users. By having People as an entity object, I can then create a multi entity view object and have the ability to join Users to People and be able to sort on the above mentioned fields (like Last Name).
    The problem is that when I use the JDev (I'm currently using 10.1.2.1) AppModule BC4J tester, when I click on the multi-entity view object that I added to the AppModule it gives me an error:
    oracle.jbo.RowCreateException) JBO-25017: Error while creating a new entity row for People.
    ----- LEVEL 1: DETAIL 0 -----
    (java.lang.InstantiationException) null
    I have tried to change all the attributes to updateable in my entity object, but no create method, and I have tried to make them all read-only, but no effect, I get the same error (probably because the People view is read-only in my schema).
    Is there a way to change the entity object so that it will not try to create a new row when it runs the Tester? So that the multi entity view object behaves more like a view link, but gives me the added bonus of being able to sort on the Last Name column from the People table?
    Thanks for any help on this subject...at worst, I will have to use the view link method to get the job accomplished, but it would be "cooler" if this would work!
    Jeremy.

    Steve, thanks for your quick response to my question.
    To answer your questions, I was trying to create the Multi-entity View Object to give me more flexibility when working with my User table, and my People view. The flexibility I desired was that I would be able to sort my Users based on attributes in the People view. This is not possible when the there is only one Entity in my VO, and the People view data are all transient attributes, because they are not in the SQL statement.
    Ultimately, after working with one of my colleagues, we decided to use the approach that you mentioned by creating a read-only VO with the SQL query we want to display to the user (contains both User and People data fields), and then use a different ViewObject when performing other actions on the User Table (such as inserts/updates/deletes). By using the setWhereClauseParam() method in the handleLifeCycle() for the JSP page, we should be able to navigate between the different View Objects, so that the user does not see any difference.
    Thanks! Oh, and by the way, I have read your article you included before, and I have used it many times before to tune my View Objects! Thanks!

  • JBO-25005 implementing multi-entity business rules (solved)

    Hi guys,
    I've been following through some examples in the "businessrules in adf" whitepaper you recently updated. I'm attempting a multi-entity collection within parent (6.1.4.2) on page 42.
    I have two entities defined as a composition and as a simple test I have added the following code to my parent EntityImpl class
      public void brCheckStockAvailability() {
        throw new JboException("Stock check has failed");
      public void beforeCommit(TransactionEvent e) {
        brCheckStockAvailability();
        super.beforeCommit(e);
      }As per document I have updated the jbo.txn.handleafterpostexc property to true. Whenever this code fires however I receive a rather unfriendly error message
    oracle.jbo.InvalidObjNameException: JBO-25005: Object name 1 for type Variable is invalid
         at oracle.jbo.common.VariableImpl.validateName(VariableImpl.java:234)
         at oracle.jbo.common.VariableImpl.setVariableKind(VariableImpl.java:301)
         at oracle.jbo.server.ViewObjectImpl.activateParams(ViewObjectImpl.java:13306)
         at oracle.jbo.server.ViewObjectImpl.doActivateSettings(ViewObjectImpl.java:13368)
         at oracle.jbo.server.ViewObjectImpl.doActivateSettings(ViewObjectImpl.java:13217)
         at oracle.jbo.server.ApplicationModuleImpl.activateVOs(ApplicationModuleImpl.java:7173)
         at oracle.jbo.server.ApplicationModuleImpl.doActivateState(ApplicationModuleImpl.java:6996)
         at oracle.jbo.server.ApplicationModuleImpl.doActivateAMState(ApplicationModuleImpl.java:6961)
         at oracle.jbo.server.Serializer.activate(Serializer.java:274)
         at oracle.jbo.server.DOMSerializer.activateRootAMFromDOM(DOMSerializer.java:49)
         at oracle.jbo.server.DBTransactionImpl.restoreTmpPostState(DBTransactionImpl.java:1876)
         at oracle.jbo.server.DBTransactionImpl.commitInternal(DBTransactionImpl.java:2039)
         at oracle.jbo.server.DBTransactionImpl.commit(DBTransactionImpl.java:2173)
    ..........What does this mean ? I have no idea where to even start looking !
    I am using JDeveloper 10.1.3.3 (4157) and JHeadstart 10.1.3.1.26
    Cheers,
    Brent
    Message was edited by:
    Brent Harlow
    Dont' mind me ! Seems the problem came down to one of my tables having a column called "ID". I ran into other SQL issues with this and had to change the column - once I had and had synchronised the business objects - it works fine !! :)

    Hi Jeroen,
    The fix for me was simple - the problem was being caused by a column name on the underlying table being "ID". Once I changed this name, it worked fine. Check the column names for any reserved words that really shouldn't be used as column names !
    Cheers,
    Brent

  • Insert/update in JSP

    i an developing a bc4j JSP application.
    in my form i have html drop down,poplutaed with values by using show value data tag.
    The drop down box contains "decription" field.
    now while inserting/updating,i want to find the corresponding desc_id and insert /update this desc _id in another table.
    how do i do this?
    Please help
    Monali

    To update/insert data, you can use ExecuteSQL data tag.
    Like example:
    <%
    String desc = request.getParameter("desc");
    String desc_id = request.getParameter("desc_id");
    %>
    <jbo:ExecuteSQL appid="id" > update table set desc=<%= desc %> where desc_id=<%= desc_id %>
    </jbo:ExecuteSQL>
    Hope this help.

  • Issue with trigger, multi-table insert and error logging

    I find that if I try to perform a multi-table insert with error logging on a table that has a trigger, then some constraint violations result in an exception being raised as well as logged:
    <pre>
    SQL> select * from v$version;
    BANNER
    Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
    PL/SQL Release 11.2.0.1.0 - Production
    CORE     11.2.0.1.0     Production
    TNS for 32-bit Windows: Version 11.2.0.1.0 - Production
    NLSRTL Version 11.2.0.1.0 - Production
    SQL> create table t1 (id integer primary key);
    Table created.
    SQL> create table t2 (id integer primary key, t1_id integer,
    2           constraint t2_t1_fk foreign key (t1_id) references t1);
    Table created.
    SQL> exec dbms_errlog.create_error_log ('T2');
    PL/SQL procedure successfully completed.
    SQL> insert all
    2 into t2 (id, t1_id)
    3 values (x, y)
    4 log errors into err$_t2 reject limit unlimited
    5 select 1 x, 2 y from dual;
    0 rows created.
    SQL> create or replace trigger t2_trg
    2 before insert or update on t2
    3 for each row
    4 begin
    5 null;
    6 end;
    7 /
    Trigger created.
    SQL> insert all
    2 into t2 (id, t1_id)
    3 values (x, y)
    4 log errors into err$_t2 reject limit unlimited
    5 select 1 x, 2 y from dual;
    insert all
    ERROR at line 1:
    ORA-02291: integrity constraint (EOR.T2_T1_FK) violated - parent key not found
    </code>
    This doesn't appear to be a documented restriction. Does anyone know if it is a bug?

    Tony Andrews wrote:
    This doesn't appear to be a documented restriction. Does anyone know if it is a bug?Check The Execution Model for Triggers and Integrity Constraint Checking.
    SY.

  • Errors not logged when IKM Oracle Multi Record Insert is selected

    Dear All,
    I am new in ODI 11g and I am facing the following problem:
    I created a package with 3 Interfaces with Oracle Multi Record Insert.
    In the first interface I load the source data to a temporary target
    In the second interface target#1 table is loaded using interface#1
    In the third interface target#2 is loaded using interface#1 and the multiple insert is executed and committed.
    This works correctly, but when a data error occurs (e.g. mandatory column is null), instead of the error being logged in the Error table, execution of the last interface fails with the following error:
    Caused By: java.sql.SQLIntegrityConstraintViolationException: ORA-01400: cannot insert NULL into (<schema>.<table>.<column>)
    I noticed that when I use Oracle Incremental Update instead, the errors get logged correctly in the error table.
    Does anyone know what could be causing this?

    Hi Bhabani,
    Thanks for the reply.
    I am afraid that this is a major issue for me, I do not want to re-query the source table for each target table, but on the other hand I cannot fail the process for each invalid record and I need the logging.
    Can you think of a workaround for my use case?
    Thank you!

  • Are there any programmatic means of reducing paging and increasing efficiency of insert/updates?

    We have a multi-terabyte database which daily receives tens of thousands of records to insert or update. Most online advice on reducing memory paging covers server memory options and dynamic memory management techniques.
    Are there any tested programmatic or database design techniques that could also be explored to increase efficiency?
    Thanks,
    Tom

    > How long is it taking now to process this workload?
    About four hours. The record data is inserted/updated across multiple related tables.
    Across about how many tables?
    Four hours seems a bit long for 100k rows to merge, say half updates and half new inserts (and whatever you do about deletes, maybe treat them as slowly changing dimensions), but my first move would be to just treat it as an optimization question and use
    the profiler to get a list of the longest running and most expensive queries, and see if they can be individually improved.
    Just basic stuff - do you handle the rows one at a time and commit for each one, or are the processes done relationally and with one commit per batch?
    Josh

  • Multi table insert and ....tricky problem

    I have three account related table
    --staging table where all raw records exist
    acc_event_stage
    (acc_id NUMBER(22) NOT NULL,
    event_code varchar2(50) NOT NULL,
    event_date date not null);
    --production table where valid record are moved from staging table
    acc_event
    (acc_id NUMBER(22) NOT NULL,
    event_code varchar2(50) NOT NULL,
    event_date date not null);
    --error records from staging are moved in here
    err_file
    (acc_id NUMBER(22) NOT NULL,
    error_code varchar2(50) NOT NULL);
    --summary records from production account table
    acc_event_summary
    (acc_id NUMBER(22) NOT NULL,
    event_date date NOT NULL,
    instance_flag char(1) not null);
    records in the staging table may look like this(I have put it in simple english for ease)
    open account A on June 12 8 am
    close account A on June 12 9 am
    open account A on June 12 11 am
    Rules
    Account cannot be closed if an open account doesnt exist
    account cannot be updated if an open account doesnt exist
    account cannot be opened if an open account already exist.
    Since I am using
    Insert all
    when open account record and account already exist
    into ...error table
    when close account record and open account doesnt exist
    into ...error table
    else
    into account_event table.
    select * from acc_event_stage order by ..
    wondering if the staging table has records like this
    open account A on June 12 8 am
    close account A on June 12 9 am
    open account A on June 12 11 am
    then how can I validate some of the records given the rule above.I can do the validation from existing records (before the staging table data arrived) without any problem.But the tricky part is the new records in the staging table.
    This can be easily achieved if I do cursor loop method,but doing a multi table insert looks like a problem
    any opinion.?
    thx
    m

    In short,in simple example,
    through multi table insert if I insert record in production account event table from
    staging account event table,making sure that the record doesnt exist in the production table.This will bomb if 2 open account exist in the current staging table.
    It will also bomb if an open account and then close account exist.
    etc.

  • Error meesage on UI sCannot insert/update Array without context information

    Hi All,
    As soon as page runs , i m getting the below error on server logs and also getting the same error once page page loads , user click on SellectmnayListBOx components on screen .
    Appriciate if any inputs on this . using ADF6 .
    <ApplicationModuleImpl> <doPoolMessage>
    oracle.jbo.AfterRollbackException: JBO-26102: An error occurred after rollback was performed.
         at oracle.jbo.server.DBTransactionImpl.rollback(DBTransactionImpl.java:2595)
         at oracle.jbo.server.ApplicationModuleImpl.resetState(ApplicationModuleImpl.java:4840)
         at oracle.jbo.server.ApplicationPoolMessageHandler.doPoolMessage(ApplicationPoolMessageHandler.java:336)
         at oracle.jbo.server.ApplicationModuleImpl.doPoolMessage(ApplicationModuleImpl.java:9084)
         at oracle.jbo.common.ampool.ApplicationPoolImpl.sendPoolMessage(ApplicationPoolImpl.java:4607)
         at oracle.jbo.common.ampool.ApplicationPoolImpl.resetApplicationModule(ApplicationPoolImpl.java:2026)
         at oracle.jbo.common.ampool.ApplicationPoolImpl.removeSessionCookie(ApplicationPoolImpl.java:879)
         at oracle.jbo.common.ampool.SessionCookieImpl.removeFromPool(SessionCookieImpl.java:711)
         at oracle.jbo.common.ampool.SessionCookieImpl.destroy(SessionCookieImpl.java:650)
         at oracle.jbo.common.ampool.SessionCookieImpl.timeout(SessionCookieImpl.java:697)
         at oracle.adf.model.bc4j.DCJboDataControl.releaseImmediateAMUnmanaged(DCJboDataControl.java:2525)
         at oracle.adf.model.bc4j.DCJboDataControl.releaseApplicationModule(DCJboDataControl.java:2429)
         at oracle.adf.model.bc4j.DCJboDataControl.release(DCJboDataControl.java:903)
         at oracle.adf.model.dcframe.DataControlFrameImpl.release(DataControlFrameImpl.java:364)
         at oracle.adf.model.BindingContext.resetState(BindingContext.java:637)
         at oracle.adf.model.BindingContext.release(BindingContext.java:609)
         at oracle.adf.model.servlet.HttpBindingContext.valueUnbound(HttpBindingContext.java:77)
         at weblogic.servlet.internal.session.SessionData.removeAttribute(SessionData.java:720)
         at weblogic.servlet.internal.session.SessionData.removeAttribute(SessionData.java:702)
         at weblogic.servlet.internal.session.SessionData.remove(SessionData.java:976)
         at weblogic.servlet.internal.session.MemorySessionContext.invalidateSession(MemorySessionContext.java:69)
         at weblogic.servlet.internal.session.SessionContext.invalidateSession(SessionContext.java:475)
         at weblogic.servlet.internal.session.MemorySessionContext$SessionCleanupAction.run(MemorySessionContext.java:114)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
         at weblogic.servlet.internal.session.MemorySessionContext.destroy(MemorySessionContext.java:90)
         at weblogic.servlet.internal.WebAppServletContext.destroy(WebAppServletContext.java:3220)
         at weblogic.servlet.internal.ServletContextManager.destroyContext(ServletContextManager.java:247)
         at weblogic.servlet.internal.HttpServer.unloadWebApp(HttpServer.java:461)
         at weblogic.servlet.internal.WebAppModule.destroyContexts(WebAppModule.java:1535)
         at weblogic.servlet.internal.WebAppModule.deactivate(WebAppModule.java:507)
         at weblogic.application.internal.flow.ModuleStateDriver$2.previous(ModuleStateDriver.java:387)
         at weblogic.application.utils.StateMachineDriver.previousState(StateMachineDriver.java:223)
         at weblogic.application.utils.StateMachineDriver.previousState(StateMachineDriver.java:215)
         at weblogic.application.internal.flow.ModuleStateDriver.deactivate(ModuleStateDriver.java:141)
         at weblogic.application.internal.flow.ScopedModuleDriver.deactivate(ScopedModuleDriver.java:206)
         at weblogic.application.internal.flow.ModuleListenerInvoker.deactivate(ModuleListenerInvoker.java:261)
         at weblogic.application.internal.flow.DeploymentCallbackFlow$2.previous(DeploymentCallbackFlow.java:547)
         at weblogic.application.utils.StateMachineDriver.previousState(StateMachineDriver.java:223)
         at weblogic.application.utils.StateMachineDriver.previousState(StateMachineDriver.java:215)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.deactivate(DeploymentCallbackFlow.java:192)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.deactivate(DeploymentCallbackFlow.java:184)
         at weblogic.application.internal.BaseDeployment$2.previous(BaseDeployment.java:642)
         at weblogic.application.utils.StateMachineDriver.previousState(StateMachineDriver.java:223)
         at weblogic.application.utils.StateMachineDriver.previousState(StateMachineDriver.java:215)
         at weblogic.application.internal.BaseDeployment.deactivate(BaseDeployment.java:227)
         at weblogic.application.internal.EarDeployment.deactivate(EarDeployment.java:58)
         at weblogic.application.internal.DeploymentStateChecker.deactivate(DeploymentStateChecker.java:198)
         at weblogic.deploy.internal.targetserver.AppContainerInvoker.deactivate(AppContainerInvoker.java:98)
         at weblogic.deploy.internal.targetserver.operations.AbstractOperation.silentDeactivate(AbstractOperation.java:679)
         at weblogic.deploy.internal.targetserver.operations.RedeployOperation.unprepareDeployment(RedeployOperation.java:197)
         at weblogic.deploy.internal.targetserver.operations.RedeployOperation.doPrepare(RedeployOperation.java:120)
         at weblogic.deploy.internal.targetserver.operations.AbstractOperation.prepare(AbstractOperation.java:217)
         at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentPrepare(DeploymentManager.java:747)
         at weblogic.deploy.internal.targetserver.DeploymentManager.prepareDeploymentList(DeploymentManager.java:1216)
         at weblogic.deploy.internal.targetserver.DeploymentManager.handlePrepare(DeploymentManager.java:250)
         at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.prepare(DeploymentServiceDispatcher.java:159)
         at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doPrepareCallback(DeploymentReceiverCallbackDeliverer.java:171)
         at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$000(DeploymentReceiverCallbackDeliverer.java:13)
         at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$1.run(DeploymentReceiverCallbackDeliverer.java:46)
         at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
    Caused by: oracle.jbo.JboException: Cannot insert/update Array without context information     at oracle.jbo.domain.Array.prepareForDML(Array.java:802)
         at oracle.jbo.server.ViewRowSetImpl.prepareLobObjectForBind(ViewRowSetImpl.java:8301)
         at oracle.jbo.server.ViewRowSetImpl.getParametersAsStorageTypes(ViewRowSetImpl.java:5074)
         at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:1169)
         at oracle.jbo.server.ViewRowSetImpl.executeQueryForMasters(ViewRowSetImpl.java:1397)
         at oracle.jbo.server.ViewRowSetImpl.executeQueryForMode(ViewRowSetImpl.java:1303)
         at oracle.jbo.server.ViewRowSetImpl.executeQuery(ViewRowSetImpl.java:1288)
         at oracle.jbo.server.ViewObjectImpl.executeQuery(ViewObjectImpl.java:7107)
         at com.tuitravelad.modelbase.bc.base.vo.TuiTravelADViewObject.afterRollback(TuiTravelADViewObject.java:168)
         at oracle.jbo.server.DBTransactionImpl.rollback(DBTransactionImpl.java:2570)
         ... 62 more
    ## Detail 0 ##
    oracle.jbo.JboException: Cannot insert/update Array without context information
         at oracle.jbo.domain.Array.prepareForDML(Array.java:802)
         at oracle.jbo.server.ViewRowSetImpl.prepareLobObjectForBind(ViewRowSetImpl.java:8301)
         at oracle.jbo.server.ViewRowSetImpl.getParametersAsStorageTypes(ViewRowSetImpl.java:5074)
         at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:1169)
         at oracle.jbo.server.ViewRowSetImpl.executeQueryForMasters(ViewRowSetImpl.java:1397)
         at oracle.jbo.server.ViewRowSetImpl.executeQueryForMode(ViewRowSetImpl.java:1303)
    Thanks

    Hi,
    this
    +"As soon as page runs , i m getting the below error on server logs and also getting the same error once page page loads , user click on SellectmnayListBOx components on screen ."+
    cannot be the full story you tell. The exception is thrown in the context of a prepareForDML, which is called on entities for the Create / Update and Delete use case. I also see a failed rollback. So there must be something you do before this happens during a page refresh
    Frank

  • OA Extension for opportunity create page - Multi Entity Extension

    Hello,
    i'm trying to achieve a multi Entity Extension.
    We are storing additional attributes in a custom table for opportunities. i'm trying to extend the existing Opportunity Create Page to create an other record in custom table.
    Here is what i've done.
    1. i've defined a new entity object for custom table
    2. i've defined a new view object for custom Entity
    i'm trying to figure out whether i can use a view link to link OpportunityCreateVO and custom view object. But jdeveloper is erroring out when i try to create a view link.
    Moreover i'm wondering whether i'll be able to achieve a multi Entity Extension?
    Any inputs will be helpful
    Thanks
    Mahesh

    Thanks for the hint. i could extend the VO and include both the enitity objects.
    According to the documentation, i've done the substitution and included new fields in the page using personalization. But unfortunately, row is not getting inserted in the table for the second custom entity object. Is there any additional step i'm missing out?
    Appreciate your inputs

Maybe you are looking for

  • Unit Cost of non stock material - Hubwoo Catalogue

    Hi Team, There is one requirement to transfer the the cost of matrial from SAP PM to ArcFM. Here the materials are assigned to the operations in the PM order. Here we want to transfer the service cost and material cost of the particular operation to

  • File---- XI----- JDBC(synchronus)---- transformation-------- Proxy ??

    can  u tell me, if i have scenario with multiple receivers, file-->XI->JDBC(synchronus)>transformation-- >Proxy i want to make it without BPM, how can i do that, coz, without BPM, how will the sequence of those two receivers(JDBC and Proxy) be specif

  • Clicks/Pops Between Songs

    Using a 5th generation 60 gig ipod with itunes 7.0 on Windows XP. When I listen to songs hooked up to an Altec-Lansing Inmotion speaker system, I can hear faint but noticeable pops/clicks between songs. I hooked a family member's ipod up to my speake

  • How to use Form Debugger

    i want to user oracle 10gDS form debugger. ive used the method described in help but no avail. plz someone help me. i'll be very thankful to u

  • Printing a booklet on A3 paper

    How do I set up a pages document to print a booklet using A3 paper?