| Home |
| Technical Articles |
| Training Articles |
| Receive Email for New Articles |
| Contributors |
| Hands-On-Training |
| Consultancy Services |
Technical Articles
Oracle Application Framework
OA Framework Extension of AM - Steps - How To | OA Framework Extension of AM - Steps - How To | | Print | |
| Written by Anil Passi | |
| Friday, 12 January 2007 | |
|
In the Part-1 of Application Module extension, we saw the business case for extending an Application Module. Here in the Part-2 of OA Framework Training, for Extensions of AM, I will display Steps with screenshots.
Step 1. Download the jad utility Go to www.google.com Step 2. In my case, I have <jdevhome>/jdev/myprojects included in my CLASSPATH. Hence I ftp'ed the files to <jdevhome>/jdev/myprojects/oracle/apps/per directory tree. Step 3. ->Create a new BC4J Package, by right clicking on Project. ->The AM that we wish to extend resides in oracle.apps.per.irc.candidateSelfService.server Hence, our package name will be oracle.apps.xxper.irc.candidateSelfService.server Ensure that XXPER is valid Application short name. select 'x' from fnd_application_vl where application_short_name = 'XXPER' ->Click on Finish. Step 4. We can see that, for VisitorAM, the RETENTION_LEVEL is MANAGE_STATE. Hence we will ensure that our new AM will have the same property too. Step 5. --> Right click on the new BC4J, and create a new AM. -->Name of the new AM will be xxircVisitorAM In the Extends field, click browse and select the AM as shown below. -> Keep on clicking next until you see Finish. Click on Finish. --> You will notice that class xxircVisitorAMImpl has been created. Add the below method to that class. public String validateLogin(String s, String s1) { String parentValidationResult = super.validateLogin(s,s1) ; if (parentValidationResult.compareTo("Y")==0) { //raise your event here, or insert into some bespoke table } return parentValidationResult; } Step 6. Ensure that the properties and the same, and also ensure that your method being replaced is selected. Double click on the newly created AM xxircVisitorAM and ensure that RETENTION_LEVEL is MANAGE_STATE. Also, click on ClientMethods, and ensure that the method validateLogin has been selected. Step 7. Perform Substitution. Right click on the project, and select "Edit Business Components Project" Click on Substitution, and select xxIrcVisitorAM on left hand side, and VisitorAM on right hand side. Click on Add button. Step 8. Your jpx file will look like below <?xml version="1.0" encoding='windows-1252'?> <!DOCTYPE JboProject SYSTEM "jbo_03_01.dtd"> <JboProject Name="xxircVisitorAM.jpr" SeparateXMLFiles="true" PackageName="" > <DesignTime> <Attr Name="_version" Value="9.0.3.13.75" /> <Attr Name="_jprName" Value="xxircVisitorAM.jpr" /> <Attr Name="_ejbPackage" Value="false" /> </DesignTime> <Substitutes> <Substitute OldName ="oracle.apps.xxper.irc.candidateSelfService.server.xxircVisitorAM" NewName ="oracle.apps.per.irc.candidateSelfService.server.VisitorAM" /> </Substitutes> </JboProject> Name this file as xxVisitorAM.jpx Now, load this jpx into Database using a shell similar to below. APPS_PWD=apps export APPS_PWD MACHINE_NAME=0 PORT_NUMBER=0 export MACHINE_NAME export PORT_NUMBER getPortMachine() { MACHINE_NAME=`sqlplus -s apps/$APPS_PWD <<EOF set pages 0 set lines 1023 select fnd_profile.value('CSF_EMAP_DS_HOST') || '.ad.ic.ac.uk' from dual ; exit EOF` PORT_NUMBER=`sqlplus -s apps/$APPS_PWD <<EOF set pages 0 set feed off select fnd_profile.value('CSF_MAP_DB_PORT') from dual ; exit EOF` } getPortMachine adjava \ oracle.jrad.tools.xml.importer.JPXImporter ./xxVisitorAM.jpx \ -username apps \ -password $APPS_PWD \ -dbconnection "(description=(address_list=(address=(community=tcp.world)(protocol=tcp)(host=$MACHINE_NAME)(port=$PORT_NUMBER)))(connect_data=(sid=$TWO_TASK)))" Step 9. FTP all the files from directory tree xxper to $JAVA_TOP/oracle/apps/xxper/.. Bounce apache, and you will notice that your custom logic is now being invoked. Comments
(9)
written by Jay , May 04, 2007 written by anil passi , May 04, 2007
Hi Jay
when you say base form, are you refering to OA Fwk forms or the D2K forms? cheers anil
Hi Anil,
I find your postings really very nice. I have been given a problem to solve in Oracle OAF. The problem is that I have to add a button in an OAF page. This button will have to launch a concurrent request automatically and auto feed the parameters list with values on the screen. Finally it should display the report or result automatically. All these by just a click of a button. Do you think it is possible? If yes could you please post something concerning this topic? Please if you could also email me directly on isha0108@hotmail.com
Can you please brief this with an example anil. your help will be greatly appreciated
Hi Anil,
I just want to customize a page in Oracle Incentive Compensation Module. The page name is "cnytdsum.jsp" and i cant see any personalization links appear in this screen. I enabled personalization and its enabled in other modules. I want to change a hyperlink in this page. I want to develop a new page when the user clicks the hyperlink the control should move to my new page. How can i achieve this. Please help. Your site contains very good informations. Thanks for your articles. By, Kannan Balasubramanian
Hi Anil,
I extended an AM in one of the standard Oracle Apps Page. After substituting the new AM, all the LOVs in the standard page stopped working. I think it is a know issue. Do you have a solution for this? Thanks and Regards, Senthil
Hi Anil,
Now i have done a workaround and not done the modification of the old method in AM. Now i have just added a new method in which i have incoperated everything. And i have the followed normal steps for extending an AM and as per the article above. But after i have done the substitution. I am facing an error , when i am trying to using any lov. it gives me an error saying that the region is not able to find any view instance. I believe this is an issue which senthil kumar was asking in the above on oct 30 2007. Please advise me if how i can handle this issue. Regards Ronel T. You must be logged in to a comment. Please register if you do not have an account yet.
|
Your site and articles are very good.
can you please post tutorials for Extending Oracle Applications (like Installed Base forms) through JDeveloper?. It would be really helpful.
Thanks,
Jay.