Nested Application Module and child AM remove
Hi,
I have 2 pages. Page A and Page B.
1. Page A has root am as RootAM and child am as PageAAM1(oracle.apps.xxxx.component1.server.PageAAM).
2. page B has root am as RootAM and child am as PageBAM1(oracle.apps.xxxx.component2.server.PageBAM).
Both the pages have the same AM hierarchy. And child regions have both the AM Defination and instance specified.
Now the question:
I first come to page A. Do some transactions on this page. Now here i have a button to navigate to Page B. Click on button. Navigate to Page B. Here on Page B do some other tranactions. I have a return button on Page B. When i click on Return button, I release the PageBAM1 usiing the method am.remove(). ANd then formard immediately to PageA.
At this point of time, I am getting an error soemthing like this:
oracle.apps.fnd.framework.OAException: oracle.jbo.NoObjException: JBO-25003: Object RootAM.PageBAM1 of type ApplicationModule not found
Does any one has any idea. What might be the cause and solutiion.
Thanks,
Anand
am.remove() removes the object from the rootApplicationModule, so when you navigate to the page again
the OAF will try to use the childAM and you will get this error
because you have already removed it in your previous call.
It is recommend to use am.remove() only for the Application modules create through programs.
Your really obsessed with releasing memory occupied by child AM. And you don't have any logical reasons for that.
Remove the AM only if you want to rollback or commit the transaction.
otherwise don't remove the child AM at all.
--Prasanna
Similar Messages
-
How can i understand nested application module?
Is there inherit relation between root application module and child application module?
jiayu
thanksHi,
no, they are not inheriting from each other but share the same transactional context. Nested AM are also loaded lazily, which means you minimize the footprint of your app.
Check
http://radio.weblogs.com/0118231/
for good information on ADF BC
Frank -
Nested Application Module Performance
What are the implications of nesting application modules? I am nesting them in such a way that they are defined at design-time and used by calling findApplicationModule(String) on the root ApplicationModule. Could there be any significant overhead accessing one nested app mod in this way as opposed to going to the desired app mod directly? Or is there anything else to watch out for with this type of design? I haven't had any trouble so far but my project is not too large yet.
For example, I have three ApplicationModule objects.
RootModule, Module1, and Module2. By nesting Module1
and Module2 under RootModule, I can use either once I
have an instance of RootModule by calling
findApplicationModule(String name). This is useful
when I want to do things inside both Module1 and
Module2 and still use the same connection and
transaction context.
If I only want something out of Module1 during a
request, would it be advantageous to ONLY create
Module1 directly and bypass my RootModule?
Meaning this:mod1Am =
Configuration.createRootApplicationModule("Module1","M
dule1Config");
mod1Am.myCustomOperation();As opposed to
this:rootAm =
Configuration.createRootApplicationModule("RootModule"
"RootConfig");
mod1Am = rootAm.findApplicationModule("Module1");
mod1Am.myCustomOperation();
Nick:
There are advantages to creating Module1 directly. It would be that you don't create unnecessary objects (in your case, you would avoid unnecessary creation of Module2").
However, I would make the following side comment: from your message, it sounds like you would create an AM for every request and remove it at the end. Did you consider using AppModule pool? AM pool would be better than create-remove because AM pool can keep around a number of root AM instances and manage resources for you. This way, you don't have to create any AM for each request. AM pool is also able to support stateful operations with excellent scalability.
Thanks.
Sung -
Nested Application Module - commit behavior
Guys,
I have ADF BC in the following hierarchial manner.
AM1
-VO1
-VO2
-AM2 (nested AM)
Assume that there are pending transactions on both AM1 and AM2.
what is the behaviour for the follwing?
Q1 . Issuing commit on AM1, will it commit AM2 also?
Q2 . Issuing commit on AM2, will it alone commit?
Edited by: Dev on Apr 19, 2011 12:00 PMADF distinguish between root application module and nested application modules. A root app module has no parent whereas an nested app module has a parent. A root app module holds the transaction (and only the root app module). Nested app module share the transaction of the root app module (they are nested in).
So Q1: yes and Q2: no.
Read 9.4.2 here http://download.oracle.com/docs/cd/E17904_01/web.1111/b31974/bcservices.htm#sm0229 fro more info.
Timo -
Jclient Binding to nested application module
we use a test case of
Applications
ParrentAM & NestedAM
Forms
ParrentForm & NestedForm
We added a reference to the NestedAM datacontrol in the ParrentDatabindings.cpx
When the ParrentForm attempts to set the bindingcontext in the NestedForm we recieve a null pointer exception.
Can anyone provide some insite or an example for binding to a nested application module?
thanks.Robert,
what do you mean with "Nested Form", is it a JClient panel that is contained in another JClient panel ?
Which JDeveloper release are you working with? Can you provide me a step by step instruction on how to reproduce your testcase in JClient (assume that I have a Business Component Model that has a MasterApp and a nested NestedApp module, both based on the Scott schema).
thanks for your help
Frank
JDeveloper Product Management -
Instantiate a nested application module programmatically
Hi, is it possible to instantiate a nested application module programmatically using Configuration class or other any other class?
The API of Configuration refers only to root application module.
The nested service has strong cohesion and is loose coupled with root application module and I want to use it in a stand alone client.
Any comment will be helpful,
Thanks
IliasHi,
+"The nested service has strong cohesion and is loose coupled with root application module and I want to use it in a stand alone client. "+
If this is the case, why don't you call it as a root Application Module ? If there is no dependency to the root AM, then it doesn't matter if you call it as a nested AM or root AM
Frank -
Nested application module use own connection
Hi everyone,
I'm trying to figure out how to let a nested application module use it's own connection instead of it's parent.
Any suggestions?
We're using Jdeveloper 10.1.3.3.0.
RegardsHi,
The issue is not about the data, but about the database connection. The idea is to have a general BC library (with iits Application Modules and View Objects), using its own database schema, and have that one imported in other applications, with other database schemas.
We have to use these imported BC's in the application AM, because that's the way JHeadstart works. This will result in a table not found exception, because the imported VO's are in another schema.
We were hoping that we could nest an imported Application Module and that it uses its own connection to its own database schema, but unfortuantely that does not seem possible since nested application modules inherit the connection of the parent (root) application module.
Or is there perhaps a way to achieve this; i.e. have a nested application module using its own database connection and not inherit this from its parent?
Ciao
Aino -
Transaction Management for Nested Application Module
Hi
I'm using Jdev 11.1.2.0
I am having nested Application Module. In that I want to separate view object data need to commit without commit the root application module view object.
Is it possible. Kindly reply me.No, the root application module controls the transaction of all need application modules. A commit will commit all changes together. You have to use different root application modules for this.
Timo -
Nesting Application Modules from different Projects(solved).
I am wondering if there is a possibility of nesting application modules that are part of different projects?
thanks, Florin
Message was edited by:
florinmarcusI've fond myself the answer to this question.
It is explained in the documentation:
Fusion Developer’s Guide for Oracle Application Development 11g
Chapter 35.7 Working with Libraries of Reusable Business Components -
Calling custom methods from Nested Application Modules
We are having a problem with passing parameters to our nested App Modules.
We have a custom method in our nested app module and when we drag that method from our data control palette in our page everything seems to work just fine. We are binding our NamedData values to #{requestScope.<field>} where the fields are inputText controls. When we run it will execute the function but the parameters are null.
It seems to me that the Nested App Module can not evaluate the EL expression, or in other words when it gets evaluated it returns a null.
Can anyone help with this?
Thanks,
PeterIf you use an EL expression of some hard-coded value instead of #{requestScope.XXX} does that value correctly get passed to the function?
In other words, are you 100% sure that EL expression is not evaluating to null ?
If you drop an AM method as a parameter form on a page, you'll see that by default it's NamedData elements use EL expressions that reference attribute bindings that are bound to local page-def variables, rather than to #{requestScope.something} -
Issue in Application Module and Enterprise Integration for SAP applications
Hi,
When I enabled the Application Module and Enterprise Integration for SAP applications Version 2.60 Patch 2 I am getting error in defect entity and Application Module. Does any one face this issue? Please let me know the solution.
QC details: QC 11.0 with patch 7
I followed the steps given in ALM addin page to install the adapters
Attached Screen shots of the ErrorHi
If you are wanting to know how to configure ESSO to be used to logon to SAP applications then there is a guide in the helpfile of the admin console. Simply do a search for SAP.
In short ESSO-LM comes with a SAP helper object which needs to be selected on install. To enable the ESSO SAP helper to interact with SAP, the SAP server and the SAPGUI client need to be configured. The details for this are in the helpfile. If you have multiple SAP systems launched from the SAPGUI then this is the best method because it means ESSO can distinguish between the different SAP systems through matching screens
If you have only one SAP system and you do not want to configure the SAP server then you could use send keys and not use the SAP helper object at all.
Hope this helps -
Best Practice - Bounded Task Flows, Regions and Nested Application Modules
Using JDev 11.1.1.3; understand that it's generally considered good practice to just have 1 root application module servicing model content / services for each page. In our application, we've used a number of bounded task flows and page fragments deployed as af:region's into pages as either a) views targeted in page-flow navigation, b) tab panel content inside a regular jspx, or c) af:popup / af:dialog content. As it stands, we've not engaged nesting of the application modules for this embedded region content, so these regions are no doubt instantiating new AM's if/when invoked. Should the AM's servicing these embedded regions be deployed nested within the root AM's, and then if so, does this change the way that the jsff / fragment content is actually developed (currently as per any other jspx using the DataControl pallete). Or are the best-practice directives talking about a page as being the design-time / declarative composition of content rather than the run-time aggregation of page + fragments ... in which case the fact that our embedded fragments are not using nested AM's is unlikely to concern.
Thanks,Probably a better question for the ADF EMG: http://groups.google.com/group/adf-methodology?hl=en
CM. -
Transaction insensitive nested application module.
Hi,
I heave following apptication architecture:
RootAM
|
|--- NestedOneAM
|
|--- NestedTwoAM
|
|--- BPMPayloadAMBPMPayload AM has some programmaticaly poputated (when application is invoked from BPM Workspace) view objects represents hierarchical payload from BPM process. My question is: how to make transaction insensitive this module. Rollback action removes all transient data. I don't want to create separate (not nested module) because it will creates separate unnecesary db connetion. This AM is only responsible for store in session BPM payload.
KubaCan you try overriding beforeRollback() and afterRollback() and leaving empty methods in the VO
-
I have this problem, and I wish I can find a solution.
I have two application module, am1 and am2, am2 is nested in am1, and I'm using <jbo:ApplicationModule> tag to open a connection for the application module.
I have this case, I want to access page that insert into a table but this insertion should not be committed until another operation is committed, and these two operation occurred on two different views in the 2 application module, so I want to know how can I get the application module am2 using <jbo:ApplicationModule> tag, and making it using the transaction context of application module am1.Omar,
there is a getRootApplicationModule()method on the ApplicationModuleImpl class, did you try this ?
Frank -
Hi,
Is it (somehow) possible to nest an application module from another adf bc project?
Using JDev 10.1.3.3 and JHeadstart 10.1.3.2.51.
Ciao
AinoThanx for your quick reply.
Is it possible to include the AM from the other project on design time and have it appear in the AM editor (as it would be with nested AM's from the same project)?
Ciao
Aino
Maybe you are looking for
-
What indexes are created when we check dimension as line item.
What indexes are created when we check dimension as line item. and also What indexes are created when we check dimension as high cardinality. Where can i see that information in the system. Answers are highly appreciated. Regards Kunal
-
How to print a pdf file on a servlet
Hi, I have a question, is it possible and how to send to a local printer a pdf file with a serlet ?
-
Gettin error in msg monitoring --webservice to idoc
Hi all, While sending the data from webservice to Idoc I am gettin error like this. <?xml version="1.0" encoding="UTF-8" standalone="yes" ?> - <!-- Call Adapter --> - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schema
-
Difference between updating my ipod from ipod or computer
Difference between updating my ipod from ipod or computer
-
Mid 2013 MBA 11in Intel HD 5000 with 10.9.3 update problems
Hello all, After updating my mid 2013 macbook air with a Intel HD 5000 to 10.9.3 i have noticed significant screen lag when in an occassion of toggling through windows, scrolling up/down through pages, swipping through full-screen apps, and such. It