Extending Controller for a std OAF page
Hi,
I have a requirment to extend the CO of a std OAF page.
The requirement is,On click of a submit button (Apply) invoke a custom method before the std code gets executed
To achieve the same I will use personalization and extend the standard CO and override PFR as follows
CustomCO extends StdCO
public void PR()
super.PR(); ----do I need to invoke super here?
public void PFR()
super.PFR();-----------A
if( Apply button clicked)
invoke custom code()
super.PFR(); -----------B
My question is
1) Can i copy the part std CO code(using decompiler) in my custom CO (i guess not a good practice)
2) Instead of 1) above can i invoke super as shown in B(in the code above)?
3) If i invoke super after my custom code in the if loop can I remove super pointed as A (in the code above)? Will it harm the std functionality?
Thanks,
kamath.
I agree with you, Tapash .... there might be a few cases where you might want to call seeded code first. But, the point I wanted to stress is for a submitButton, mostly the seeded controller will redirect to currentpage or any other page (depending on logic) in its code. So if you are extending the functionality of it, it becomes necessary to call ur custom code first. If you still want the seeded code to be executed first, then you might have to decompile the class file, paste the complete code in custom controller and insert your custom logic whereever you feel is appropriate.
And Senthil's suggestion also shows calling super method after custom code ... so we are all on same page :-)
Similar Messages
-
Extending Controller for a std page--good or bad
Hi
Is it a good practice to extend a standard page?
Do it have any disadvantages
Please advise
thanks
kpHi KP,
Anoop has explained very clearly.
Extension of controller is not recommend However we have to do it for fullfill the business requirement. However you can extend the controller but always include the SUPER class in controller.
if you are calling the super class then I think there is no major issue.
Thanks
--Anil -
Help - Extended Controller for Blanket PO not working
Isupplier portal : PO details page
On page /oracle/apps/pos/changeorder/webui/PosViewPOPG , I extended ViewOrderPGCO.
All the items in PO, which have bill of material are made as hyper links and clicking on them pops up a window with bill of mateiral displayed.
All worked fine untill I opened Blanket PO, there is an item which should be displayed as link, but its static. so I put SOPs in extended controller after each line, and to my consternation it does not print any SOP.
Blanket POs in isupplier portal have hyphens in PO Number. Has anyone faced this problem ? why is the extension not reflecting in case of blanket po ? What am i missing ?
Thanks in advance.Anyone please help.
Extended CO for blanket PO doesnt seem to be called whereas for standard PO it works.
Steps taken
- MAViewOrderPGCO extends ViewOrderPGCO and replaced the new CO through personalization at site level.
public class MAViewOrderPGCO extends ViewOrderPGCO
public void processRequest(OAPageContext pageContext, OAWebBean webBean)
super.processRequest(pageContext, webBean);
System.out.println("___________________________________"); //This prints for STANDARD PO but not for Blanket PO }
}could someone help me in debugging this. I am terribly stuck. -
How can i use AME for the new OAF page.
Dear all,
I have developed a new OAF page and registered under Employee Self Service.
How can i use AME for the approval process.
Appreciate your ideas?
zamoraI will try to answer based on my experience of working with iProcurement and AME. It depends on how you want to make a call to AME , directly from OAF Page or from Workflow and your requirement. You didn't specify what you want to show the users on OAF Page and your business requirement.
Before calling AME Engine from the OAF page or workflow, I guess you did already setup AME Transaction Type and it's Approval Groups, Conditions, Action Types and Rules. Do some testing from AME Business Analyst Test Workbench. Please note that, AME provides lot of PL/SQL API's that you have to call from your programs (java or workflow pl/sql)
Let's look at the workflow and putting an OAF Page as notification.
As Sameer said, you have kick-off workflow process from PR of CO and with in the workflow function, you make a call to AME Engine API's with the AME Transaction ID. This transactionId belongs to the AME Transsaction Type that you setup. Based on the rules setup, AME Engine generates list of approvers/approver and stores them AME Tables for that transactionId. Then, it sends a notification to the approver.
In the workflow, where that notification is defined, in the message body you have to put an attribute(&XX_WF_FWK_RN) of type document/send. And this attribute will have the constant JSP:/OA_HTML/OA.jsp?OAFunc=XX_FUNC¶mId=-&DOCUMENT_ID-. This function is SSWA Jsp function that makes a web html call to your OAF Region.
If your requirement is to just show the list of approvers on the OAF Page, you may have to call AME API diectly passing your AME TrasnactionId with other parameters. Then AME generates list of approvers and stores them in AME tables with each approver status. You can pickup those approvers using VO and show them on OAF Page.
Hope this gives some idea. -
Error page for a custom OAF page in e-Biz
Hi, All
I developed a simple custom search page and deployed it to e-Business (version 12.1.3). I runs well in jDeveloper at the client. This is the steps I did:
1) zip <JDEV_USER_HOME>\myclasses\xx
file structure:
xx\oracle\apps\xx\mem\server
xx\oracle\apps\xx\mem\webui
xx\oracle\apps\xx\schema\server
2) load to application tier $JAVA_TOP
3) chmod -R 775 $JAVA_TOP/xx
4) copy History.xml to
5) $APPL_TOP/xx/mds/webui
6) import MDS: java oracle.jrad.tools.xml.importer.XMLImporter $XX_TOP/mds/webui/HistoryPG.xml -username apps -password apps -dbconnection "(DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=db_host)(PORT=1521))(CONNECT_DATA= (SERVICE_NAME=$TWO_TASK) (INSTANCE_NAME=$TWO_TASK)))" -rootdir $XX_TOP/mds -rootPackage /xx/oracle/apps/xx
7) after import completed, bounce the web server
8) reqister a function in e-Biz
Type: SSWA jsp function
HTML Call: OA.jsp?page=xx/oracle/apps/xx/mem/server/HistoryPG
9) put the function in a menu.
When I launch the page, I got error "Error Page You have encountered an unexpected error. Please contact the System Administrator for assistance.
I would be appreciated if anyone can point out which step missed or is incorrect.
RudolphHi Rudolph,
Are you getting any message like Click Here for Details.
Just click there to get the Java Error Stack.
As updated already in this thread, this Java Error Stack should help you in resolving the error.
Are you able to run the page from JDeveloper without any error? -
Hi All,
I am getting the error below while trying to enter a value in a field (The field has a search symbol, when i click on it i get an error "You have encountered an unexpected error. Please contact the System Administrator for assistance"). I have enabled the diagnostics and i could see the error below. This is 11.5.10.2
oracle.apps.fnd.framework.OAException: oracle.jbo.SQLStmtException: JBO-27122: SQL error during statement preparation.
Statement: SELECT ppd.segment2 position_number,
ppd.segment3 position_title,
papf.full_name employee_name,
haou1.NAME budget_centre,
haou1.organization_id budget_centre_id,
hapf.position_id position_id,
haou.organization_id position_org_id,
papf.person_id person_id,
haou.NAME position_org_name,
haou.TYPE pos_org_type
FROM hr_all_organization_units haou,
hr_all_organization_units haou1,
hr_all_positions_f hapf,
per_position_definitions ppd,
per_all_people_f papf,
per_all_assignments_f paaf,
per_person_types ppt,
per_person_type_usages_f pptuf
WHERE haou.business_group_id = :0 AND hapf.business_group_id = :1
AND SYSDATE BETWEEN haou.date_from
AND NVL (haou.date_to,
TO_DATE ('31-DEC-4712', 'DD-MON-RRRR'))
AND SYSDATE BETWEEN haou1.date_from
AND NVL (haou1.date_to,
TO_DATE ('31-DEC-4712', 'DD-MON-RRRR'))
AND hapf.organization_id = haou.organization_id
AND papf.person_id = paaf.person_id
AND hapf.position_id = paaf.position_id
AND papf.person_id = pptuf.person_id
AND ppt.system_person_type = ('EMP')
AND paaf.assignment_status_type_id = 1
AND ppt.person_type_id = pptuf.person_type_id
AND SYSDATE BETWEEN hapf.effective_start_date
AND hapf.effective_end_date
AND SYSDATE BETWEEN papf.effective_start_date
AND papf.effective_end_date
AND SYSDATE BETWEEN paaf.effective_start_date
AND paaf.effective_end_date
AND SYSDATE BETWEEN pptuf.effective_start_date
AND pptuf.effective_end_date
AND ppd.position_definition_id = hapf.position_definition_id
AND haou1.organization_id = xxhr_utils_pkg.xxhr_get_parent_org_f (
haou.organization_id,
'BC',
'WHO Organization Hierarchy',
SYSDATE)
AND haou.organization_id IN
( SELECT organization_id_child
FROM per_org_structure_elements
WHERE org_structure_version_id =
(SELECT MAX (posv1.org_structure_version_id)
FROM per_org_structure_versions posv1,
per_organization_structures pos
WHERE posv1.organization_structure_id =
pos.organization_structure_id
AND pos.primary_structure_flag = 'Y')
CONNECT BY organization_id_parent =
PRIOR organization_id_child
START WITH organization_id_parent = :2)
UNION ALL
SELECT ppd.segment2 position_number,
ppd.segment3 position_title,
per_emp.employee_name employee_name,
haou1.NAME budget_centre,
haou1.organization_id budget_centre_id,
hapf.position_id position_id,
haou.organization_id position_org_id,
per_emp.person_id person_id,
haou.NAME position_org_name,
haou.TYPE pos_org_type
FROM hr_all_organization_units haou,
hr_all_organization_units haou1,
hr_all_positions_f hapf,
per_position_definitions ppd,
(SELECT papf.full_name employee_name,
papf.person_id person_id,
paaf.position_id position_id
FROM per_person_types ppt,
per_person_type_usages_f pptuf,
per_all_people_f papf,
per_all_assignments_f paaf
WHERE 1 = 1
AND SYSDATE BETWEEN pptuf.effective_start_date
AND pptuf.effective_end_date
AND ppt.system_person_type = ('EMP')
AND ppt.person_type_id = pptuf.person_type_id
AND papf.person_id = pptuf.person_id
AND SYSDATE BETWEEN papf.effective_start_date
AND papf.effective_end_date
AND papf.person_id = paaf.person_id
AND SYSDATE BETWEEN paaf.effective_start_date
AND paaf.effective_end_date
AND paaf.assignment_status_type_id = 1
AND paaf.organization_id = :3) per_emp
WHERE hapf.organization_id = :4
AND haou.business_group_id = :5
AND hapf.business_group_id = :6
AND SYSDATE BETWEEN haou.date_from
AND NVL (haou.date_to,
TO_DATE ('31-DEC-4712', 'DD-MON-RRRR'))
AND SYSDATE BETWEEN haou1.date_from
AND NVL (haou1.date_to,
TO_DATE ('31-DEC-4712', 'DD-MON-RRRR'))
AND hapf.organization_id = haou.organization_id
AND hapf.position_id = per_emp.position_id(+)
AND SYSDATE BETWEEN hapf.effective_start_date
AND hapf.effective_end_date
AND ppd.position_definition_id = hapf.position_definition_id
AND haou1.organization_id = xxhr_utils_pkg.xxhr_get_parent_org_f (
haou.organization_id,
'BC',
'WHO Organization Hierarchy',
SYSDATE)
UNION ALL
SELECT ppd.segment2 position_number,
ppd.segment3 position_title,
NULL employee_name,
haou1.NAME budget_centre,
haou1.organization_id budget_centre_id,
hapf.position_id position_id,
haou.organization_id position_org_id,
NULL person_id,
haou.NAME position_org_name,
haou.TYPE pos_org_type
FROM hr_all_organization_units haou,
hr_all_organization_units haou1,
hr_all_positions_f hapf,
per_position_definitions ppd
WHERE haou.business_group_id = :7 AND hapf.business_group_id = :8
AND SYSDATE BETWEEN haou.date_from
AND NVL (haou.date_to,
TO_DATE ('31-DEC-4712', 'DD-MON-RRRR'))
AND SYSDATE BETWEEN haou1.date_from
AND NVL (haou1.date_to,
TO_DATE ('31-DEC-4712', 'DD-MON-RRRR'))
AND hapf.organization_id = haou.organization_id
AND SYSDATE BETWEEN hapf.effective_start_date
AND hapf.effective_end_date
AND ppd.position_definition_id = hapf.position_definition_id
AND haou1.organization_id = xxhr_utils_pkg.xxhr_get_parent_org_f (
haou.organization_id,
'BC',
'WHO Organization Hierarchy',
SYSDATE)
AND NOT EXISTS
(SELECT 'c'
FROM per_person_types ppt,
per_person_type_usages_f pptuf,
per_all_people_f papf,
per_all_assignments_f paaf
WHERE 1 = 1
AND SYSDATE BETWEEN pptuf.effective_start_date
AND pptuf.effective_end_date
AND ppt.system_person_type = ('EMP')
AND ppt.person_type_id = pptuf.person_type_id
AND papf.person_id = pptuf.person_id
AND SYSDATE BETWEEN papf.effective_start_date
AND papf.effective_end_date
AND papf.person_id = paaf.person_id
AND SYSDATE BETWEEN paaf.effective_start_date
AND paaf.effective_end_date
AND paaf.assignment_status_type_id = 1
AND hapf.position_id = paaf.position_id)
AND haou.organization_id IN
( SELECT organization_id_child
FROM per_org_structure_elements
WHERE org_structure_version_id =
(SELECT MAX (posv1.org_structure_version_id)
FROM per_org_structure_versions posv1,
per_organization_structures pos
WHERE posv1.organization_structure_id =
pos.organization_structure_id
AND pos.primary_structure_flag = 'Y')
CONNECT BY organization_id_parent =
PRIOR organization_id_child
START WITH organization_id_parent = :9)
at oracle.apps.fnd.framework.OAException.wrapperException(OAException.java:891)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:603)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:247)
at oracle.apps.fnd.framework.webui.OAListOfValuesHelper.processRequest(OAListOfValuesHelper.java:439)
at oracle.apps.fnd.framework.webui.beans.layout.OAListOfValuesBean.processRequest(OAListOfValuesBean.java:413)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:959)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:926)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:646)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:247)
at oracle.apps.fnd.framework.webui.beans.OABodyBean.processRequest(OABodyBean.java:353)
at oracle.apps.fnd.framework.webui.OAPageBean.processRequest(OAPageBean.java:2373)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:1759)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:511)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:432)
at oa_html._OA._jspService(_OA.java:84)
at oracle.jsp.runtime.HttpJsp.service(HttpJsp.java:119) at oracle.jsp.app.JspApplication.dispatchRequest(JspApplication.java:417)
at oracle.jsp.JspServlet.doDispatch(JspServlet.java:267) at oracle.jsp.JspServlet.internalService(JspServlet.java:186)
at oracle.jsp.JspServlet.service(JspServlet.java:156) at javax.servlet.http.HttpServlet.service(HttpServlet.java:588)
at org.apache.jserv.JServConnection.processRequest(JServConnection.java:456) at org.apache.jserv.JServConnection.run(JServConnection.java:294)
at java.lang.Thread.run(Thread.java:619)
## Detail 0 ##
java.sql.SQLException: ORA-01722: invalid number
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289)
at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:590)
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1973)
at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:1119)
at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.java:2566)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2963)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:658)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:584)
at oracle.jbo.server.QueryCollection.buildResultSet(QueryCollection.java:631)
at oracle.jbo.server.QueryCollection.executeQuery(QueryCollection.java:518)
at oracle.jbo.server.ViewObjectImpl.executeQueryForCollection(ViewObjectImpl.java:3375)
at oracle.jbo.server.OAJboViewObjectImpl.executeQueryForCollection(OAJboViewObjectImpl.java:828)
at oracle.apps.fnd.framework.server.OAViewObjectImpl.executeQueryForCollection(OAViewObjectImpl.java:4525)
at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:574)
at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:544)
at oracle.jbo.server.ViewRowSetImpl.executeDetailQuery(ViewRowSetImpl.java:619)
at oracle.jbo.server.ViewObjectImpl.executeDetailQuery(ViewObjectImpl.java:3339)
at oracle.jbo.server.ViewObjectImpl.executeQuery(ViewObjectImpl.java:3326)
at oracle.apps.fnd.framework.server.OAViewObjectImpl.executeQuery(OAViewObjectImpl.java:441)
at who.oracle.apps.xxwp.hrplan.lov.webui.XXWP_ParentPositionLOVCO.processRequest(XXWP_ParentPositionLOVCO.java:108)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:587)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:247)
at oracle.apps.fnd.framework.webui.OAListOfValuesHelper.processRequest(OAListOfValuesHelper.java:439)
at oracle.apps.fnd.framework.webui.beans.layout.OAListOfValuesBean.processRequest(OAListOfValuesBean.java:413)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:959)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:926)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:646)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:247)
at oracle.apps.fnd.framework.webui.beans.OABodyBean.processRequest(OABodyBean.java:353)
at oracle.apps.fnd.framework.webui.OAPageBean.processRequest(OAPageBean.java:2373)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:1759)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:511)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:432)
at oa_html._OA._jspService(_OA.java:84)
at oracle.jsp.runtime.HttpJsp.service(HttpJsp.java:119)
at oracle.jsp.app.JspApplication.dispatchRequest(JspApplication.java:417)
at oracle.jsp.JspServlet.doDispatch(JspServlet.java:267)
at oracle.jsp.JspServlet.internalService(JspServlet.java:186)
at oracle.jsp.JspServlet.service(JspServlet.java:156)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:588)
at org.apache.jserv.JServConnection.processRequest(JServConnection.java:456)
at org.apache.jserv.JServConnection.run(JServConnection.java:294)
at java.lang.Thread.run(Thread.java:619) java.sql.SQLException: ORA-01722: invalid number
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289)
at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:590)
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1973)
at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:1119)
at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.java:2566)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2963)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:658)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:584)
at oracle.jbo.server.QueryCollection.buildResultSet(QueryCollection.java:631)
at oracle.jbo.server.QueryCollection.executeQuery(QueryCollection.java:518)
at oracle.jbo.server.ViewObjectImpl.executeQueryForCollection(ViewObjectImpl.java:3375)
at oracle.jbo.server.OAJboViewObjectImpl.executeQueryForCollection(OAJboViewObjectImpl.java:828)
at oracle.apps.fnd.framework.server.OAViewObjectImpl.executeQueryForCollection(OAViewObjectImpl.java:4525)
at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:574)
at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:544)
at oracle.jbo.server.ViewRowSetImpl.executeDetailQuery(ViewRowSetImpl.java:619)
at oracle.jbo.server.ViewObjectImpl.executeDetailQuery(ViewObjectImpl.java:3339)
at oracle.jbo.server.ViewObjectImpl.executeQuery(ViewObjectImpl.java:3326)
at oracle.apps.fnd.framework.server.OAViewObjectImpl.executeQuery(OAViewObjectImpl.java:441)
at who.oracle.apps.xxwp.hrplan.lov.webui.XXWP_ParentPositionLOVCO.processRequest(XXWP_ParentPositionLOVCO.java:108)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:587)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:247)
at oracle.apps.fnd.framework.webui.OAListOfValuesHelper.processRequest(OAListOfValuesHelper.java:439)
at oracle.apps.fnd.framework.webui.beans.layout.OAListOfValuesBean.processRequest(OAListOfValuesBean.java:413)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:959)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:926)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:646)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:247)
at oracle.apps.fnd.framework.webui.beans.OABodyBean.processRequest(OABodyBean.java:353)
at oracle.apps.fnd.framework.webui.OAPageBean.processRequest(OAPageBean.java:2373)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:1759)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:511)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:432)
at oa_html._OA._jspService(_OA.java:84) at oracle.jsp.runtime.HttpJsp.service(HttpJsp.java:119)
at oracle.jsp.app.JspApplication.dispatchRequest(JspApplication.java:417)
at oracle.jsp.JspServlet.doDispatch(JspServlet.java:267)
at oracle.jsp.JspServlet.internalService(JspServlet.java:186)
at oracle.jsp.JspServlet.service(JspServlet.java:156)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:588)
at org.apache.jserv.JServConnection.processRequest(JServConnection.java:456)
at org.apache.jserv.JServConnection.run(JServConnection.java:294)
at java.lang.Thread.run(Thread.java:619)
The above error message also has the line below, just mentioning to avoid searching the whole error message.
java.sql.SQLException: ORA-01722: invalid number
Could you please help me with this issue.
Thanks and Regards
SriniSrini,
Probably this is due to passing of null value instead of a valid number, while executing the VO.
Check with the below line of code.
XXWP_ParentPositionLOVCO.java @line number - 108
Regards,
Gyan -
Javascript for Alert in OAF Page
Hi,
I wanted a popup Error to be thrown like the ones using js in client side validations
I had posted a thread earlier
Re: Javascript for alert
has anyone tried the js alert option and can you post the code and exact details of how it needs to be done?I have not worked in js earlier.
Also would want to know how to call this js to throw this error message and the risks of doing this.
Thanks,Hi,
Try this...
StringBuffer jsString = new StringBuffer();
jsString.append(" function validatePage() { ");
jsString.append(" var alertMsg = ''; ");
jsString.append(" var view = document.getElementById('ContractEV'); ");
jsString.append(" var contractNo = document.getElementById('ContractNo'); ");
jsString.append(" var customerRef = document.getElementById('CustomerRef'); ");
jsString.append(" var projectNo = document.getElementById('ProjectNo'); ");
jsString.append(" if(contractNo.value == '' && projectNo.value == '' && customerRef.value == '') { alert('Please select Contract Number, Customer Reference or Project Number'); return false;} ");
jsString.append(" if(contractNo.value == '' && customerRef.value == '' && projectNo.value != '') { return true; } ");
jsString.append(" if((customerRef.value != '' || contractNo.value != '') && projectNo.value == '') { if(!view.value) { alert('Please select View you want to see for Contract'); return false;} ");
jsString.append(" else { return true; } } ");
jsString.append(" } ");
OABodyBean bB = (OABodyBean)pageContext.getRootWebBean();
bB.setOnClick(jsString.toString());
pageContext.putJavaScriptFunction("validatePage", jsString.toString());
OASubmitButtonBean okButton = (OASubmitButtonBean)webBean.findChildRecursive("OK");
okButton.setOnClick("return validatePage()"); -
Extended controller bypassed when new regions, AM, VO, CO's attached
Hi All,
I am trying to customise iSupport pages.i.e. UnMatached Invoice page. Requirement is like to default values in Remit to and Cutomer Tax payer id LOV regions(populated all associated fields like form values, items etc).
We had this logic in extended controller of the UnMatched Invoice page. But strangely some times this extended controller is by passed and default value logic does n't work(if the extended Co is not bypassed logic works fine).
Please suggest how to over come this issue. we are in a critical stage of project.
Edited by: user12241604 on Sep 18, 2011 9:11 AMCan some one quickly respond to my query, as we are in a critical stage of project.
Eagerly waiting for reply -
How transfer custom OAF pages to Jdeveloper to Server
Hi,
i am facing the issue while opening the custom OAF pages from server which are developed by som other guy.
Please let me know how to open those custom OAF pages in Jdeveloper from server .
Regards ,
Maheswara RajuRaju,
Refer below link for all the steps for registering the OAF page to server.
http://www.focusthread.com/apps_tutorials/oa_framework/OA_Framework_Tutorial_Deployment_in_APPS_Environment.pdf
Regards,
Gyan -
Calling a workflow from Extended Controller
Hi,
I want to call a workflow from an extended controller, I wrote the following code:
if ("return".equals(event)) {
OAApplicationModule am = pageContext.getApplicationModule(webBean);
processReturn(pageContext, webBean, am);
String srNo = "";
String sql = "BEGIN xx_sr_notf_pkg.invoke_wf (:1); END;";
String status = null;
OracleCallableStatement cs =
(OracleCallableStatement)am.getOADBTransaction().createCallableStatement(sql,1);
but it seems that the second line (processReturn(pageContext, webBean, am)) is not being executed...
Any suggestions ?
ThanksNow,how is it possible to capture the value of Requisition Line ID in iProcurement, or even better the record of >po_requisition_lines_all from my extended Controller (xxCheckoutDistsCO) ?In your page check if any VO has "Requisition Line ID" as its attribute. Then you can get it using
vo.getCurrentRow().getAttribute("Attribute_name");
Or
Check in seeded CO, you may find some code which is used to get "Requisition Line ID"
-Anand -
What are the steps for extending a OAF page (11iApplication Salary screen)
I couldn't proceed further beyond step 3 after following the instruction in OAF Developer's Guide, Chapter 9, Common BC4J Extension, page 890.
In Step 3, it says...
Create a new view object that extends the parent VO (you create the extended VO just as you would any other view object with the following difference: specify the name of the parent VO in the Extends View Object field in the first page of the wizard). Be sure to follow the naming standard described above.
Note that the parent VO package must be included in your project before you can extend the parent VO.
The issue I have now is, during the creation of a new VO, I need to extend the parent VO. However, I do not see any parentVO in the Parent window for me to select.
I want to know what are the initial steps or normal steps you usually do when extending a OAF page, so I know where I missed.
Thanks.
**Purpose:
To make the ViewAttribute:ProposalReason as a required field when entering a new salary record
**Some information about the Salary screen:
Page:
/oracle/apps/per/saladmin/webui/NewSalaryPG
Page Denefination:
header: New Salary CO: NewProposalCO
messageComponentLayout: (NewProposalRN)
messageRadioGroup: "Reason for Change"
VO:PerPayProposalsVO1 ViewAttribute:ProposalReason
AM:oracle.apps.per.saladmin.server.SaladminAM
VO:oracle.apps.per.saladmin.server.PerPayProposalsVO
EO:oracle.apps.per.schema.server.PerPayProposalsEO
CO:oracle.apps.per.saladmin.webui.NewProposalCO
AM: Version:
SaladminAMImpl.java 115.80
VO Version:
PerPayProposalsVOImpl.java 115.16
PerPayProposalsVORowImpl.java 115.8
EO Version:
PerPayProposalsEOImpl.java
Message was edited by:
user562389Hi,
which version of JDeveloper is this ? 11 ?
Frank -
Extended Controller is not working for SalaryCorrectPG.xml page
Dear All,
I have a problem with customisation in Oracle's seeded page in HRMS Module.
The page navigation is as follows:
Login--->Home Page---->Access Payroll Manager Responsibility------>people--->Enter & Maintain--->search for an employee------>click on Assignment button---->Click on Salary button--->Salary details page will open----->Click on correct button of the salary page.
Now I have extended the SalaryCorrectVO in the salary correct page under a custom directory (but structure is same as the seeded one)
and Created one attribute in the SalaryCorrectVO which is showing multiplied value of FTE Salary and FTEFactor in the page.
Now my concern is in the page there are three fileds(Amount Change, Change %,FTE Salary) which are editable. PPR event is fired when any value
changes in these 3 fields. Now my extended attribute (xxSalaryCorrectVO) is depending on the 3rd field's value i.e FTE Salary. So after page load when these 3 field's
value changes the FTESalary field's value is also changing but my extended attribute's value is not changing (XxfteSalary) .
So I need to update the controller of that page under where the PPR event is catched. So to update PPR event part I have extended the controller
SalaryCorrectCO class and write the follwoing code in the extended controller and put the controller in the custom directory.But whenever i put the
extended controller in the path the Salary Correct page is throwing 'null pointer exception' when the page loads itself. Please help...........
Thanks in Advance....
extended controller code:
package xxcustomname.oracle.apps.per.saladmin.webui;
import oracle.apps.fnd.framework.OAApplicationModule;
import oracle.apps.fnd.framework.OARow;
import oracle.apps.fnd.framework.webui.OAPageContext;
import oracle.apps.fnd.framework.webui.OAWebBeanConstants;
import oracle.apps.fnd.framework.webui.beans.OAWebBean;
import oracle.apps.per.saladmin.webui.SalaryCorrectCO;
import xxexp.oracle.apps.per.saladmin.server.xxSalaryCorrectVOImpl;
import xxexp.oracle.apps.per.saladmin.server.xxSalaryCorrectVORowImpl;
public class xxSalaryCorrectCO extends SalaryCorrectCO {
public void processFormRequest(OAPageContext oapagecontext, OAWebBean oawebbean)
super.processFormRequest(oapagecontext, oawebbean);
OAApplicationModule oaapplicationmodule = oapagecontext.getApplicationModule(oawebbean);
String s2 = oapagecontext.getParameter("event");
if("changedNewSalary".equals(s2))
//Custom Code to Populate the xxfteSalary field
String rowReference =
oapagecontext.getParameter(OAWebBeanConstants.EVENT_SOURCE_ROW_REFERENCE);
OARow row = (OARow)oaapplicationmodule.findRowByRef(rowReference);
if (row.getAttribute("AnnualSalary") != null)
String fteSalary = row.getAttribute("AnnualSalary").toString();
float fteSalaryFlt = Float.parseFloat(fteSalary);
//Have to get the row Impl class object to get the getter of FTE Factor to get the FTE Factor value in String
xxSalaryCorrectVOImpl vo =
(xxSalaryCorrectVOImpl)oaapplicationmodule.findViewObject("xxSalaryCorrectVO");
xxSalaryCorrectVORowImpl fteFactorEqRow =
(xxSalaryCorrectVORowImpl)vo.getCurrentRow();
String fteFactorNM = fteFactorEqRow.getFteFactor().toString();
float fteFactorflt =Float.parseFloat(fteFactorNM);
float actualSalary = (fteSalaryFlt * fteFactorflt);
oracle.jbo.domain.Number actualSalaryNMVal = null;
actualSalaryNMVal = new oracle.jbo.domain.Number(actualSalary);
row.setAttribute("XxfteSalary", actualSalaryNMVal);
//Custom Code to Populate the xxfteSalary field Ends here
} else
if("changedChangeAmount".equals(s2))
//Custom Code to Populate the xxfteSalary field*
String rowReference =
oapagecontext.getParameter(OAWebBeanConstants.EVENT_SOURCE_ROW_REFERENCE);
OARow row = (OARow)oaapplicationmodule.findRowByRef(rowReference);
if (row.getAttribute("AnnualSalary") != null)
String fteSalary = row.getAttribute("AnnualSalary").toString();
System.out.println(fteSalary);
float fteSalaryFlt = Float.parseFloat(fteSalary);
//Have to get the row Impl class object to get the getter of FTE Factor to get the FTE Factor value in String
xxSalaryCorrectVOImpl vo =
(xxSalaryCorrectVOImpl)oaapplicationmodule.findViewObject("xxSalaryCorrectVO");
xxSalaryCorrectVORowImpl fteFactorEqRow =
(xxSalaryCorrectVORowImpl)vo.getCurrentRow();
String fteFactorNM = fteFactorEqRow.getFteFactor().toString();
float fteFactorflt =Float.parseFloat(fteFactorNM);
float actualSalary = (fteSalaryFlt * fteFactorflt);
oracle.jbo.domain.Number actualSalaryNMVal = null;
actualSalaryNMVal = new oracle.jbo.domain.Number(actualSalary);
row.setAttribute("XxfteSalary", actualSalaryNMVal);
//Custom Code to Populate the xxfteSalary field Ends here
} else
if("changedChgPercent".equals(s2))
//Custom Code to Populate the xxfteSalary field
String rowReference =
oapagecontext.getParameter(OAWebBeanConstants.EVENT_SOURCE_ROW_REFERENCE);
OARow row = (OARow)oaapplicationmodule.findRowByRef(rowReference);
if (row.getAttribute("AnnualSalary") != null)
String fteSalary = row.getAttribute("AnnualSalary").toString();
float fteSalaryFlt = Float.parseFloat(fteSalary);
//Have to get the row Impl class object to get the getter of FTE Factor to get the FTE Factor value in String
xxSalaryCorrectVOImpl vo =
(xxSalaryCorrectVOImpl)oaapplicationmodule.findViewObject("xxSalaryCorrectVO");
xxSalaryCorrectVORowImpl fteFactorEqRow =
(xxSalaryCorrectVORowImpl)vo.getCurrentRow();
String fteFactorNM = fteFactorEqRow.getFteFactor().toString();
float fteFactorflt =Float.parseFloat(fteFactorNM);
float actualSalary = (fteSalaryFlt * fteFactorflt);
oracle.jbo.domain.Number actualSalaryNMVal = null;
actualSalaryNMVal = new oracle.jbo.domain.Number(actualSalary);
row.setAttribute("XxfteSalary", actualSalaryNMVal);
//Custom Code to Populate the xxfteSalary field Ends here
}oracle.apps.fnd.framework.OAException: java.lang.NullPointerException
at oracle.apps.fnd.framework.OAException.wrapperException(OAException.java:896)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:612)
at oracle.apps.fnd.framework.webui.OAWebBeanTableHelper.processRequest(OAWebBeanTableHelper.java:2141)
at oracle.apps.fnd.framework.webui.OAAdvancedTableHelper.processRequest(OAAdvancedTableHelper.java:581)
at oracle.apps.fnd.framework.webui.beans.table.OAAdvancedTableBean.processRequest(OAAdvancedTableBean.java:737)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:964)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:931)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:655)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:251)
at oracle.apps.fnd.framework.webui.beans.layout.OAHeaderBean.processRequest(OAHeaderBean.java:391)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:964)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:931)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:655)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:251)
at oracle.apps.fnd.framework.webui.beans.layout.OAStackLayoutBean.processRequest(OAStackLayoutBean.java:350)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:964)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:931)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:655)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:251)
at oracle.apps.fnd.framework.webui.OAPageLayoutHelper.processRequest(OAPageLayoutHelper.java:1166)
at oracle.apps.fnd.framework.webui.beans.layout.OAPageLayoutBean.processRequest(OAPageLayoutBean.java:1569)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:964)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:931)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:655)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:251)
at oracle.apps.fnd.framework.webui.beans.form.OAFormBean.processRequest(OAFormBean.java:385)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:964)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:931)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:655)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:251)
at oracle.apps.fnd.framework.webui.beans.OABodyBean.processRequest(OABodyBean.java:353)
at oracle.apps.fnd.framework.webui.OAPageBean.processRequest(OAPageBean.java:2496)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:1892)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:536)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:424)
at OA.jspService(_OA.java:204)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:462)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:594)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:518)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
at oracle.apps.jtf.base.session.ReleaseResFilter.doFilter(ReleaseResFilter.java:26)
at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
at oracle.apps.fnd.security.AppsServletFilter.doFilter(AppsServletFilter.java:318)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:302)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:190)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
at java.lang.Thread.run(Thread.java:619)
## Detail 0 ##
java.lang.NullPointerException
at oracle.apps.per.saladmin.webui.SalaryCorrectCO.processRequest(SalaryCorrectCO.java:177)
at xxexp.oracle.apps.per.saladmin.webui.xxSalaryCorrectCO.processRequest(xxSalaryCorrectCO.java:18)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:596)
at oracle.apps.fnd.framework.webui.OAWebBeanTableHelper.processRequest(OAWebBeanTableHelper.java:2141)
at oracle.apps.fnd.framework.webui.OAAdvancedTableHelper.processRequest(OAAdvancedTableHelper.java:581)
at oracle.apps.fnd.framework.webui.beans.table.OAAdvancedTableBean.processRequest(OAAdvancedTableBean.java:737)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:964)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:931)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:655)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:251)
at oracle.apps.fnd.framework.webui.beans.layout.OAHeaderBean.processRequest(OAHeaderBean.java:391)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:964)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:931)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:655)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:251)
at oracle.apps.fnd.framework.webui.beans.layout.OAStackLayoutBean.processRequest(OAStackLayoutBean.java:350)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:964)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:931)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:655)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:251)
at oracle.apps.fnd.framework.webui.OAPageLayoutHelper.processRequest(OAPageLayoutHelper.java:1166)
at oracle.apps.fnd.framework.webui.beans.layout.OAPageLayoutBean.processRequest(OAPageLayoutBean.java:1569)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:964)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:931)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:655)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:251)
at oracle.apps.fnd.framework.webui.beans.form.OAFormBean.processRequest(OAFormBean.java:385)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:964)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:931)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:655)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:251)
at oracle.apps.fnd.framework.webui.beans.OABodyBean.processRequest(OABodyBean.java:353)
at oracle.apps.fnd.framework.webui.OAPageBean.processRequest(OAPageBean.java:2496)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:1892)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:536)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:424)
at OA.jspService(_OA.java:204)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:462)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:594)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:518)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
at oracle.apps.jtf.base.session.ReleaseResFilter.doFilter(ReleaseResFilter.java:26)
at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
at oracle.apps.fnd.security.AppsServletFilter.doFilter(AppsServletFilter.java:318)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:302)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:190)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
at java.lang.Thread.run(Thread.java:619)
java.lang.NullPointerException
at oracle.apps.per.saladmin.webui.SalaryCorrectCO.processRequest(SalaryCorrectCO.java:177)
at xxexp.oracle.apps.per.saladmin.webui.xxSalaryCorrectCO.processRequest(xxSalaryCorrectCO.java:18)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:596)
at oracle.apps.fnd.framework.webui.OAWebBeanTableHelper.processRequest(OAWebBeanTableHelper.java:2141)
at oracle.apps.fnd.framework.webui.OAAdvancedTableHelper.processRequest(OAAdvancedTableHelper.java:581)
at oracle.apps.fnd.framework.webui.beans.table.OAAdvancedTableBean.processRequest(OAAdvancedTableBean.java:737)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:964)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:931)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:655)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:251)
at oracle.apps.fnd.framework.webui.beans.layout.OAHeaderBean.processRequest(OAHeaderBean.java:391)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:964)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:931)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:655)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:251)
at oracle.apps.fnd.framework.webui.beans.layout.OAStackLayoutBean.processRequest(OAStackLayoutBean.java:350)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:964)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:931)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:655)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:251)
at oracle.apps.fnd.framework.webui.OAPageLayoutHelper.processRequest(OAPageLayoutHelper.java:1166)
at oracle.apps.fnd.framework.webui.beans.layout.OAPageLayoutBean.processRequest(OAPageLayoutBean.java:1569)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:964)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:931)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:655)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:251)
at oracle.apps.fnd.framework.webui.beans.form.OAFormBean.processRequest(OAFormBean.java:385)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:964)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:931)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:655)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:251)
at oracle.apps.fnd.framework.webui.beans.OABodyBean.processRequest(OABodyBean.java:353)
at oracle.apps.fnd.framework.webui.OAPageBean.processRequest(OAPageBean.java:2496)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:1892)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:536)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:424)
at OA.jspService(_OA.java:204)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:462)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:594)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:518)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
at oracle.apps.jtf.base.session.ReleaseResFilter.doFilter(ReleaseResFilter.java:26)
at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
at oracle.apps.fnd.security.AppsServletFilter.doFilter(AppsServletFilter.java:318)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:302)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:190)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
at java.lang.Thread.run(Thread.java:619) -
Missing class file for extended controller
Any response/advice is greatly appreciated.
I've searched the forums, and I saw some had this error, but the post wasn't resolved. We are on 12.1.3. I've done this plenty of times when we were on 11.5.10 with great success. I've personalize a page to look at my extendedController, bounced apache:
adapcctl.sh stop
adoacorectl.sh stop
adoacorectl.sh start
adapcctl.sh start
Web page brings up:
oracle.apps.fnd.framework.OAException: oracle.jbo.JboException: JBO-29000: Unexpected exception caught: oracle.classloader.util.AnnotatedNoClassDefFoundError, msg= Missing class: emsc.oracle.apps.emscper.dor.webui.ExtDocsOfRecordUpdateCO (wrong name: ExtDocsOfRecordUpdateCO) Dependent class: emsc.oracle.apps.emscper.dor.webui.ExtDocsOfRecordUpdateCO Loader: oacore.root:0.0.0 Code-Source: /demsci/applmgr/common/java/classes/ Configuration: <library> in /demsci/applmgr/common/webapps/oacore/
Verified spelling, ensure class file is where it is suppose to be:
$ echo $JAVA_TOP
/demsci/applmgr/common/java/classes
$ echo `pwd`
/demsci/applmgr/common/java/classes/emsc/oracle/apps/emscper/dor/webui
Created new /dor/webui directory as user applmgr.
$ ls -ltr $JAVA_TOP/emsc/oracle/apps/emscper/dor/webui
total 9
-rw-r--r-- 1 apdemsci aademsci 3243 Nov 28 18:26 ExtDocsOfRecordUpdateCO.java
-rwxrwxrwx 1 apdemsci aademsci 3710 Nov 28 18:26 ExtDocsOfRecordUpdateCO.class
ClassPath has the $JAVA_TOP listed:
/demsci/applmgr/common/java/classes
ThanksI moved the extended class to the standard directory: $JAVA_TOP/oracle/apps/per/dor/webui
Recompiled it there
From Functional Administrator, changed the path of the extended controller to the standard path:
oracle.apps.per.dor.webui.ExtDocsOfRecordUpdateCO
Bounced apache/cleared cached.
Received the same error, very strange....
Missing class: oracle.apps.per.dor.webui.ExtDocsOfRecordUpdateCO (wrong name: ExtDocsOfRecordUpdateCO) Dependent class: oracle.apps.per.dor.webui.ExtDocsOfRecordUpdateCO Loader: oacore.root:0.0.0 Code-Source: /demsci/applmgr/common/java/classes/ Configuration: <library> in /demsci/applmgr/common/webapps/oacore/
Verified the class file is there and it is where it is suppose to be:
$ pwd
/demsci/applmgr/common/java/classes/oracle/apps/per/dor/webui
you have mail in /var/spool/mail/apdemsci
$ ls -ltr ExtDocsOfRecordUpdateCO.class
-rw-r--r-- 1 apdemsci aademsci 3710 Nov 29 15:29 ExtDocsOfRecordUpdateCO.class
Makes no sense...
For your other point, I don't want rename the subdirectory since we have other extensions dependent on the path name.
Thanks -
How to get the .class file for the extended Controller .java file
Hi,
I did the below steps.
1. Created New OAWorkspace
2. Created New project
3. Imported the page .xml file
4. Added new .java file by extending the controller class
5. Added code in the .java file.
6. Ran the .xml file
As I copied all the folders from Unix box, the page was opened.
But My question was where can I see the .class file the extended controller. It's a .java file. How to compile and get the .class file for this .java file. If I get this .class file, I can go to the page and click the personlize page. and change the Controller name to the new path by ftp ing the new class to the cust.oracle.apps.pos.changeorder.webiui.
Please let me know how to create the .class file.
Thanks,
HPAll are Java files are stored in JDEV_INSTALL_DIR:\jdevhome\jdev\myprojects\
In your case the path java would be
JDEV_INSTALL_DIR:\jdevhome\jdev\ myprojects \cust\oracle\apps\pos\changeorder\webui\
AND
Once you compile the java file in Jdeveloper, Class files get generated @ below path
In your case the path of class would be
JDEV_INSTALL_DIR:\jdevhome\jdev\ myclasses \cust\oracle\apps\pos\changeorder\webui\
Duplicate Thread-
Thanks
--Anil
http://oracleanil.blogspot.com/ -
Hi All,
How can i restrict a page for a user.
That is I don't want a particular user to modify the page.
So how can i hide a OAF page from the user.
When the user logs in the page or responsibility must not be shown.
Thanks & Regards,
Jeganathan RExtend the controller and write code to set property of button according to the user Login.
Capture the user name in PR of controller then enable or disable button as per your requirement.
Thanks
--Anil
Maybe you are looking for
-
No Video / i Sight Cam No Longer Works - HELP!
I have been using iSight's internal cam with no problems. Today, after a freeze, i had to shut down using the button on the back of the computer. No video programs show the video preview. The camera lights, and I get no error messages. The screen jus
-
Trying to install Oracle 11.5.10.2 on AIX - first steps
Hi. Oracle 9.2.0.5.0. AIX I have created the necessary directories on our development machine, and each of them contains the contents of each of the 8 DVDs from the software bundle I have been given. Im not sure of the next step. I have this metalink
-
My sent messages are not displayed...what happened and how do I restore?
My sent messages are not displayed...what happened and how do I restore?
-
Hi All - I have a VB.NET app that produces a PS file containing text and graphics. I need to keep track, in my VB app, of where some text has printed. Specifically, I have a block of text which will need to be parsed into multiple lines to fit into
-
Mini Displayport Input and Windows
When booted in Windows 7 on one of the 27" iMacs, is it possible to still utilize the Mini Displayport Input? The Apple + F2 to switch to input does not work when using Windows.