Вы находитесь на странице: 1из 4

About passivation

Cette question est non rsolue.

user642317 13 fvr. 2009 07:04 Hi Gurus, Can any one explain clearly what is this passivation in OAF. I am Oracle apps technical guy and don't know much about Java or other standards. I read in developed guide and other web pages but everytime it is always a new topic to me. What is this passivation? What are possible cases regarding this passivation? Where do we use passivation? Where we shouldn't use passivation? Can any explain with some realtime scenario or use... Hope you will cover about RETENSION_LEVEL property in Application Module. It is also mystery to me, in which type of pages we should use? I developed few new pages in OAF and luckily I didn't come across any situation to use this. Thank you guys. Have a great day.

The process of saving application state to a secondary medium (in the case of OA Framework, database tables) is called passivation. OR The process of saving object state to a secondary medium. This is similar to Java I/O serialization, but passivation is a more generic concept. Serialization is one way to save data. Consider a multi-page purchase order creation flow where the user describes the order in the first page, enters one or more line items in the second page, and reviews the order before submitting it in the third page. The purchase order data (its state) must remain intact between each of the browser requests for the transaction to be completed successfully.

NOTE:-->Set the Retention Level for root application modules only. Do not set it for nested application modules as their passivation behavior is determined by the root application module's configuration. For example, do not set this property for application modules associated with LOVs and attachment pages as these application modules are nested under the main page's root application module. However, because they are passivated with the root application module, nested application modules must observe all the state management coding standards. Set each root application module's Retention Level to MANAGE_STATE. Reason why---> This allows OA Framework to recover connections and memory under resource load, support session failover, and other pending features such as Save For Later and JVM failover.

Your reply is very helpful. I have gone through some other sources and tried few cases. Can you guys clarify me below doubts. I have main page with search. From search I can go to update page or create page. For ex in Update page, I have multiple records for Header and link to lines page. If I click on lines link I can go to lines page from there sub child page. I can update records in all 3 pages header,lines and sub child page. I have Review &commit and rollback in header page. I am using a single AM for the whole page(for Lov's I am using different AM). Is this becomes my Root Application Module? Do I have to set RETENSION_LEVEL property for this AM? Till now I didn't use in any of my screens. Can you explain how this saves me from issues? What is relation between profile option " *FND: Application Module Connection Pool Enabled* " and RETENTION_LEVEL property for Root AM? I am getting surprising results with these combinations. Can you explain these combinations... Profile ++++++++ RETENTION_LEVEL -------- --------------------------YES ++++++++++ MANAGE_STATE NO ++++++++++ MANAGE_STATE YES ++++++++++ NULL(NOT SET) NO ++++++++++ NULL(NOT SET) Here is one scenario, If profile *"FND: Application Module Connection Pool Enabled " is YES and RETENTION_LEVEL=MANAGE_STATE* In Save button ------------------String msg; OAException message; if (am.getOADBTransaction().isDirty()) { msg = " Saved Records successfully "; message = new OAException(msg, OAException.CONFIRMATION); pageContext.putDialogMessage(message); } else { msg = " No Changes to save. "; message = new OAException(msg, OAException.INFORMATION); pageContext.putDialogMessage(message); }

what ever changes you do, it always shows you *"No Changes to save.".* If I commit directly without DirtyCheck it is commiting records. ---------------------------Anil, If you don't mine can you explain these terms in normal usage(in screens). Recovering connection? Supporting Session failover? Save For Later? -- Is it possible to implement this in OAF like database post? Thank You guys. Have a Good Day.

Regards, Ani Edited by: user642317 on Feb 13, 2009 9:25 AM

Вам также может понравиться