Custom page controller class

Hello,
I'm trying to implement what is explained in the article *"Two Ideas to Handle JBO-35007 'Row Currency Changed' Exception"* (http://blogs.oracle.com/smuenchadf/examples/). This example illustrates how to use a custom page controller class to override the handleError() method to conditionally handle the JBO-35007 exception ('Row currency has changed since the user interface was rendered.') in a way that might be more useful to the end-user.
So I've defined a custom page controller class in a JSP of my application, but I don't know why the application flow is not passing through the handleError method when a JBO-35007 exception occurs.
I've defined well in the pagedef the attribute "ControllerClass", and I use the "back button" to produce the JBO-35007 exception. But I don't know why the method handleError is not executed, although the the JBO-35007 exception is displayed.
Thank you very much.

Hi,
you are on JDeveloper 11g ? The article you follow was written for 10.1.3. In 11g the error handling is configured in DataBindings.cpx page. Select the DataBindings.cpx page in the Application Navigator and select its root node in the Structure Window. Then open the Property Inspector to configure your version of the Error Handler class
Frank

Similar Messages

  • How to access servlet objects from OA page controller class

    Hi everybody!
    I need to put some value into servlet attribute in OA page controller class to read it from ordinary servlet later.
    How can i do it? Is it possible to get HttpServletRequest and HttpServletResponse objects from page controller?
    Thank you.

    I have a servlet which receives uploaded files with special attributes (something like tags for file) using POST request.
    This attributes created when user open page in standard OAF page via page controller.
    On client side I have an applet which uploads user selected file to my servlet and passes this file attributes.
    Now this attributes passes as plain text. I want to encrypt this attributes to hide attribute details from user. To do this I need to share some information between OAF page and my servlet.
    I know that OAF supports URL encryption, but to decrypt it I should use standard pageContext object.
    But in ordinary servlet I can't use it.

  • Insert Only Forms with custom Page Lifecycle class

    I discovered a bug/inconsistency in the JHS Generator:
    The business case (translated to the HR schema) is
    We have an Insert Only form for creating new Departments. (Group name: DepartmentsEntry)
    When the user saves a new Department, we want to forward them
    using the Faces Navigation Handler to the group named "Departments".
    The implementation we used:
    - Create a custom class which extends oracle.jheadstart.controller.jsf.lifecycle.JhsPageLifecycle.
    This class overrides the onCommit method: if there are errors we stay on this page,
    otherwise we redirect the user.
    - Specify this classname in the Page Lifecycle Class property (under "Customization Settings") within the Application Definition Editor.
    When we then try to run the page, the Insert-Only form does not work as expected;
    The user has to click on the "New Department" button first.
    I see that the specified classname occurs in the ControllerClass property of
    the Page Definition file DepartmentsEntryPageDef.xml file.
    The way I solved the problem was to create a custom groupFacesConfig.vm template
    which specifies the managed-bean-class property of the ${JHS.current.group.name}PageLifecycle managed bean.
    This then solves the problem - the InsertOnly form works as expected.
    This is not as I would expect the "Page Lifecycle Class" property to be used.
    In my opinion the "Page Lifecycle Class" property should also be used in the default groupdFacesConfig.vm template and not only in the Page Definition file.
    Is this behaviour expected?

    Cliff,
    You are right, this is a bug that has been fixed for the upcoming 10.1.3.2 release.
    Steven Davelaar,
    JHeadstart Team.

  • How to call & pass values to custom page from seeded page table region

    Hi All,
    can anyone tell me how to call & pass values to custom page from seeded page table region(Attribute is not available in seeded page VO)
    it is urgent. plssss
    Regards,
    purna

    Hi,
    Yes, we do this by extending controller, but you can also try this without extending controller.
    1. Create Submit Button on TableRN using personalization.
    2. Set "Destination URI" property to like below
    OA.jsp?page=/<yourname>/oracle/apps/ak/employee/webui/EmpDetailsPG&employeeNumber={@EmployeeId}&employeeName={@EmployeeName}&retainAM=Y&addBreadCrumb=Y
    Give your custom page path instead of EmpDetailsPG.
    EmployeeId and EmployeeName are VO attributes(Table Region)
    If you dont have desired attribute in VO, then write logic in your custom page controller to get required value using parameters passed from URL path.
    In this case, only personalization will do our job. Hope it helps.
    Thanks,
    Venkat Y.

  • Cannot locate custom controller class after applying OIE.K  patch.

    Hi,
    I am trying to search all the region level personalizations(on Update Allocations Page in iExpenses while creating Expense Reports) to find out where our custom controller class is being called(it was personalized at site level). But no luck until now.
    Nevertheless, we were able to locate our custom controller class in an instance where the OIE.K oracle patch was not applied. Seems like after applying this patch, the seeded region names are changed too. Our custom code also works but cannot figure out where our CO is being called.
    Any suggestions please?
    Thanks,
    Swati.

    Guys,
    Using "About the Page" link on UpdateExpenseAllocationsPG, I found SplitCriteriaTblCO controller class instead of UpdateKffCO class, that was extended to HumUpdateKffCO custom class.
    Our custom code is still intact even though we do not find our custom CO. Probably we have to look elsewhere to find it, no idea!.
    I just need to know how to remove our iExpense extension. In order to remove the iExpense extensions in the instance where the OIE.K was not applied, we just removed the personalization at site level, where the controller HumUpdateKffCO was called and that took care of it.
    --Swati.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • Page load is not happening using controller class on jspx page on 11g

    Hi
    <pageDefinition xmlns="http://xmlns.oracle.com/adfm/uimodel"
    version="11.1.1.55.36" id="budgetAccountPageDef"
    Package="pages.documents" ControllerClass="#{BudgetReport}">
    It is throwing illegal access exception , sometimes onload is not called and no exception. sometimes it works too. This begaves strangely

    Controller class should not be given like that...According to [url http://download.oracle.com/docs/cd/E14571_01/web.1111/b31974/adf_lifecycle.htm#CHDBDCDF]the documentation, you can indeed use EL to specify the ControllerClass.
    It is throwing illegal access exception , sometimes onload is not called and no exception. sometimes it works too. This begaves strangelyTake a step back and read your post again - do you think anyone would be able to help you, given the level of information you've provided? If it works sometimes, then apparently you have specified it properly. What is the stack trace for the illegal access exception? What are you doing in your controller class (assuming the exception is thrown from your class).
    John

  • Passing value of View Attribute from standard page to custom page

    Hi everyone,
    I have a custom page which needs to be called from a standard page. Now this custom page is based on some parameters whose value will depend on the dynamic selection by user. So how to get the currently executed value from VO.
    For ex: Vendor Id , contact id and site Id all are to be fetched which are present in three different VOs. When user select particular vendor, contact and site these values will change accordind to selection.
    Here do I need to extend the controller and application module of the standard page or it can be done by passing parameters in destination URI of submit button.
    I tried using parameters in destination URI of submit button as {VO.ViewAttributeName} and printing in custom page but it was printing " {VO.ViewAttributeName}" as it is.
    Please help..
    Thanks in advance.
    Edited by: Kittu on Nov 18, 2010 1:05 PM

    Hi Meher,
    I tried doing it by destination uri but it was not taking the value.
    I tried CO extension with the following code in my extended CO :
    public class ExtendedByrCntDirCO extends ByrCntctDirCO
    public void processRequest(OAPageContext pageContext, OAWebBean webBean)
    super.processRequest(pageContext, webBean);
    /* I WANT TO CREATE TEH SUBMIT BUTTON PROGRAMATICALLY */
    OASubmitButtonBean oasb= (OASubmitButtonBean)pageContext.getWebBeanFactory().createWebBean(pageContext,"BUTTON_SUBMIT");
    oasb.setID("SubmitBtn");
    oasb.setUINodeName("SubmitBtn");
    oasb.setEvent("xxSubmitButton");
    oasb.setText("Submit");
    webBean.addIndexedChild(oasb);
    public void processFormRequest(OAPageContext pageContext, OAWebBean webBean)
    super.processFormRequest(pageContext, webBean);
    String url = "OA.jsp?page=/oracle/apps/aeap/Vendors/webui/VendorContactsPG";
    OAApplicationModule am =
    (OAApplicationModule)pageContext.getApplicationModule(webBean);
    OAViewObject VendorsVO = (OAViewObject)am.findViewObject("VendorsVO1"); // To retrive the attribute of a particular VO
    Number VendorId = (Number)VendorsVO.getCurrentRow().getAttribute("VendorId"); *// But here its showing null pointer exception*
    HashMap params = new HashMap(1);
    params.put("VendorId", VendorId);
    String strEvent= pageContext.getParameter(EVENT_PARAM) ;
    if ( strEvent.equals("xxSubmitButton"))
    pageContext.setForwardURL(url,
    null,
    OAWebBeanConstants.KEEP_MENU_CONTEXT,
    null,
    params,
    true,
    OAWebBeanConstants.ADD_BREAD_CRUMB_NO,
    OAWebBeanConstants.IGNORE_MESSAGES);
    So how can I retrive the value from VO . Is there any another way . Plz help...
    Edited by: Kittu on Nov 19, 2010 12:46 PM

  • Error while extending controller: class name is wrong or not included

    Hi All,
    I am getting this error while I port my extended controller class to the custom top and assign this controller to the page. I have made sure its the class file that is copied. The directory is correct, the permissions were given using chmod 775. There exists a soft link betwen the custom top and the oracle top as well. What else am I missing here?
    Error: oracle.apps.fnd.framework.OAException: Could not create Java class: (oracle.apps.ap.oie.entry.webui.XXEntryFlowPageCO) associated with region: (GeneralInformationPG). This is probably because the class name is wrong or not included in project.

    :( Started out with that Gyan. If i do give the path with xx. appended to it, it lets me save and when i log back in and there are no changes to the page. I go to the personalise option to find the modification has been overwritten. I was told that this is so because Oracle doesnt recognise the xx.path and since there exists a soft link already the standard path with the new controller name should work.
    i have really tried both of these options and am not sure what could be wrong. thanks for all your attempts to help. anything else i can try?

  • How to use SSHRParams in a custom page

    Hi
    I have been trying to use SSHRParams in my custom page. I need to use this to get AssignmentId and PersonID. Initially I tried using the SSHRParam package by just importing it. But it did not help. Below is the code that I had in my controller
    import oracle.apps.fnd.common.VersionInfo;
    import oracle.apps.fnd.framework.webui.OAControllerImpl;
    import oracle.apps.fnd.framework.webui.OAPageContext;
    import oracle.apps.fnd.framework.webui.beans.OAWebBean;
    import oracle.apps.per.selfservice.arch.webui.PerOAControllerImpl;
    import oracle.apps.per.selfservice.common.SSHRParams;
    * Controller for ...
    public class PtoRequestDeleteCO extends PerOAControllerImpl
    public static final String RCS_ID="$Header$";
    public static final boolean RCS_ID_RECORDED =
    VersionInfo.recordClassVersion(RCS_ID, "%packagename%");
    * Layout and page setup logic for a region.
    * @param pageContext the current OA page context
    * @param webBean the web bean corresponding to the region
    public void processRequest(OAPageContext pageContext, OAWebBean webBean)
    super.processRequest(pageContext, webBean);
    SSHRParams localSSHRParams = new SSHRParams(pageContext.getRootApplicationModule());
    //localSSHRParams.initCtx();
    String personType = localSSHRParams.getSelectedPersonType();
    String personID = localSSHRParams.getSelectedPersonId();
    * Procedure to handle form submissions for form elements in
    * a region.
    * @param pageContext the current OA page context
    * @param webBean the web bean corresponding to the region
    public void processFormRequest(OAPageContext pageContext, OAWebBean webBean)
    super.processFormRequest(pageContext, webBean);
    I am new to OAF and I have tried almost everything that I can think of.
    Thanks
    Kumar
    Edited by: kvsankar on Feb 15, 2011 6:30 PM

    Here this is what you need to do
    1. get all the files from $PER_TOP/mds folder onto your pc.
    2. create folder structure called oracle/apps/per and put all the files from step1.
    3. zip above oracle folder and move it to jdevhome/jdev
    4. Attach this .zip file to the project by going into project properties -> libraries -> add libraries ( select the file in class path and source path example both these paths should be .../jdevhome/jdev/filename.zip)
    5. see my control code below ( remove any unnecessary code lines from below and use what u need, i am just pasting as is )
    package oracle.apps.pay.w4.webui;
    import java.io.Serializable;
    import oracle.apps.fnd.common.VersionInfo;
    import oracle.apps.fnd.framework.OAViewObject;
    import oracle.apps.fnd.framework.OAApplicationModule;
    import oracle.apps.fnd.framework.server.OADBTransactionImpl;
    import oracle.apps.fnd.framework.webui.OAWebBeanConstants;
    import oracle.apps.fnd.framework.webui.OAControllerImpl;
    import oracle.apps.fnd.framework.webui.OAPageContext;
    import oracle.apps.fnd.framework.webui.beans.OAWebBean;
    import oracle.apps.per.selfservice.common.SSHRParams;
    * Controller for ...
    public class W4mainCO extends OAControllerImpl
    public static final String RCS_ID="$Header$";
    public static final boolean RCS_ID_RECORDED =
    VersionInfo.recordClassVersion(RCS_ID, "%packagename%");
    * Layout and page setup logic for a region.
    * @param pageContext the current OA page context
    * @param webBean the web bean corresponding to the region
    public void processRequest(OAPageContext pageContext, OAWebBean webBean)
    super.processRequest(pageContext, webBean);
    OAApplicationModule oaapplicationmodule = pageContext.getRootApplicationModule();
    OADBTransactionImpl oadbtransactionimpl = (OADBTransactionImpl)oaapplicationmodule.getOADBTransaction();
    OAApplicationModule oaapplicationmodule1 = pageContext.getApplicationModule(webBean);
    OAViewObject oaviewobject = (OAViewObject)oaapplicationmodule1.findViewObject("W4VO1");
    SSHRParams sshrparams = new SSHRParams(pageContext.getApplicationModule(webBean).getOADBTransaction());
    String s = sshrparams.getPersonId();
    OAApplicationModule am = pageContext.getApplicationModule(webBean);
    Serializable[] parameters = { s };
    am.invokeMethod("initDetails", parameters);
    let me know if you need any help.
    Thanks
    Karan

  • Custom page with internal id as parameters: convert to names

    Hi,
    I am new to OAFramework... just so that you know.
    I have a custom page, called from a link on a notiification, which has a number of parameers coming in. These parameters are internal ids. Do I use validation view object to translate those id's into names and numbers? Or is that usually done via a different technique?
    thanks
    Ronny

    Ok, here is what I did.
    I have a number of internal id's coming in as parameter.
    Created 2 VVO's.
    - InvoiceDataVVO
    - personDataVVO
    Actually I created 3 VVO's, because I thought I would be able to use a VVO a second time for another translation but that seemed to be wrong thinking.
    So, third VVO (which is identical to personDataVVO)
    - ccPersonDataVVO
    Connected them to the AM (NotifySupplierAM).
    Created the initQuery method in the corresponding VVOImpl classes
    public void initQuery(String PersonId)
    setWhereClauseParams(null); // Always reset
    setWhereClauseParam(0, PersonId);
    executeQuery();
    In the controller NotifySupplierCO I added the following in the processRequest
    public void processRequest(OAPageContext pageContext, OAWebBean webBean)
    super.processRequest(pageContext, webBean);
    initMailData(pageContext, webBean);
    code for initMailData
    * Display the proper mailing info on the page
    * @param pageContext the current OA page context
    * @param webBean the web bean corresponding to the region
    public void initMailData(OAPageContext pageContext, OAWebBean webBean)
    Enumeration num = pageContext.getParameterNames();
    Hashtable hm = new Hashtable();
    while (num.hasMoreElements()) {
    String element = num.nextElement().toString();
    hm.put(element, pageContext.getParameter(element) );
    String InvoiceId = hm.get("invoiceId").toString();
    String VendorId = hm.get("vendorId").toString();
    String AccountantUserId = hm.get("accountantUserId").toString();
    String SenderUserId = hm.get("senderUserId").toString();
    String RespId = hm.get("respId").toString();
    String RespApplId = hm.get("respApplId").toString();
    String OrgId = hm.get("orgId").toString();
    System.out.println("InvoiceId : " + InvoiceId);
    System.out.println("VendorId : " + VendorId);
    System.out.println("AccountUserId : " + AccountantUserId);
    System.out.println("SenderUserId : " + SenderUserId);
    System.out.println("RespId : " + RespId);
    System.out.println("RespApplId : " + RespApplId);
    System.out.println("OrgId : " + OrgId);
    // Translate the parameter values into names and stuff
    OAApplicationModule am = pageContext.getApplicationModule(webBean);
    Serializable[] parameters = { InvoiceId, AccountantUserId, SenderUserId  };
    am.invokeMethod("queryMailDataById", parameters);
    // Put the values to the page fields (for the items which are not mapped
    // to a VVO
    OAMessageTextInputBean itemMailBodyTextBean = (OAMessageTextInputBean)webBean.findChildRecursive("MailBodyText");
    OAMessageCheckBoxBean itemIncludeAttachmentBean = (OAMessageCheckBoxBean)webBean.findChildRecursive("IncludeAttachment");
    itemMailBodyTextBean.setValue(pageContext,null);
    itemIncludeAttachmentBean.setValue(pageContext, 'Y');
    } // initMailData
    This calls queryMailDataById in the AM, which looks like this.
    * Translate the incoming id values into the nessecary data values
    * to be displayed on the page
    * @param pageContext the current OA page context
    * @param webBean the web bean corresponding to the region
    public void queryMailDataById( String InvoiceId
    , String AccountantId
    , String SenderId
    InvoiceDataVVOImpl voInv = getInvoiceDataVVO1();
    voInv.initQuery(InvoiceId);
    personDataVVOImpl voSend = getpersonDataVVO1();
    voSend.initQuery(SenderId);
    ccPersonDataVVOImpl voAccount = getccPersonDataVVO1();
    voAccount.initQuery(AccountantId);
    The input fields on the page are mapped to the VVO's.
    example:
    View Instance: InvoiceDataVVO1
    View Attribute: VendorEmail
    That did the trick.
    regards
    Ronny
    Edited by: Ronny Eelen on 11-Jul-2011 01:12

  • Extended controller class error

    Hi,
    I have extended the CompetenciesCO.class file by creating java class in the jdev, after that i written my logic then i saved and transfered that specific file
    to server (where the CompetenciesCO is located).
    But while i run the page, it says could not create java file:
    after that i changed that extended controller file to .class file, but again same problem.
    What should i do?
    Thanks in advance,
    SAN

    I can't understand about custom top under $JAVA_TOP.
    what i did is, i paced the extended Controller file in the same location where the original controller available.
    Now what should i do?
    why my extended class is problem?
    I changed the controller class file in the Region also using personalization.
    but i didn't bouce the application after i made this, is it needed?

  • Generation of custom syncbo java classes does not work.

    Hello
    we created some new syncbo's for MAM 3.0 in the middleware and download it's correspond meRepMeta.xml.
    Now i will generate in the NetWeaver Developer Studio the manager and syncbo classes for our new custom syncbo's. I had create a new SmartSync-Project and deliver the meRepMeta.xml file, edit the package and some other things and start the project creation process. But after this, i have only an simple MI project with web.xml, meRepMeta.xml and so on, but no generated, custom syncbo's. In the documentation i couldn't find a detailed description for the generation of syncbo java classes.
    Can anybody help me, what i do wrong.
    Tanks a lot.
    Greetings
    Andreas

    Hi Kai,
    Just note these points..
    1)Smart Sync MI Applications (JSP Runtime) generated using SP 09v of Developer Studio is MCD specific.It is generating MCD specific files.This architecture makes the applications too complex during migration.
    2)In SP 09v applications, the developers don't have to code in Smart Sync API level as most of the codes are generated by default.
    3)Applications in SP 09v of Developer Studio is following the exact MVC Architecture(We can see the seperation of models, views and controllers here).
    4)Corresponding to the mapped fields (in SyncBo level), in the BO Wrapper classes we can see implementations of corresponding getter() and setter(..) methods.The names of this methods are totally dependent upon the names of fields mapped.So if there is change in the names of fields , in the case of already generated projects , we have to explicitly rename the getter() and setter(..) methods appropriately inorder to make the changes to take effect.
    5)For adding new JSP pages, we have to add references in many files(*.view). (we have to explicitly create the corresponding controller class file , map the relationship between the controller and the corresponding JSP file).
    refer this blog also..
    /people/kishor.gopinathan/blog/2006/05/29/smart-sync-application-development-using-sp-09v-of-developer-studio
    <<
    have to write the acces classes, mentioned in the MDK, manually for every new SyncBO I want to use?
    >>
         For that , we can write a generic method in such a way that , we only have to pass the syncbo name as the parameter for that method, so that it would retrieve the records corresponding to the syncbo given.
       Since the getter nd setter method names are closely related to the names of the mapped fields, this would create problems when we change the names of fields used in the table parameter or import parameter of the BAPI Wrapper used for syncbo creation.
    So using SP 11 , we can create generic applications, which can be migrated using the higher versions of NWD Studio. I think , SAP might not change this infrastructure anymore..
      Regards,
      Kishor Gopinathan

  • Unable to run existing custom page in OAF

    Dear Friends ,
    I have to develop one page as similar to a existing custom page.
    First to run the existing custom page , I have down loaded all the files (custom folder )  from server to local directory ,and rebuilt...... still Iam not able to run the existing page .
    Even I tried to run a NEW sample page (in the same directory ) , iam not able to run.
    Can any one suggest in this.
    let me know for any clarifications.
    Thanks
    Aravinda

    Hello Aravinda,
    First of all, in order to run the custom pages in your local machine, you need to copy the xml files and .class files in your respective folder.
    Then, the .class files of EO,VO ,Controller,etc should be decompiled and .java files should be generated. These files should be in your myprojects.
    This is just the abstract view of what needs to be done.
    For developing the OAF pages, I reccomend you to go through this following blog. Its really nice for a newbie..
    https://blogs.oracle.com/prajkumar/entry/oaf_developer_guide
    Thanks,
    Yadnesh
    (Hit Helpful or correct if you feel so.. It encourages user to participate)

  • Problem while passing parameter from standard page to custome page

    Hi,
    We are calling a custom page from standard page.
    Standard page Extended CO
    PR
    String wcHeader = pageContext.getParameter("WcHeaderId");
    pageContext.putTransactionTransientValue("WcHeaderId",wcHeader);
    PFR
    String wcHeader=(String)pageContext.getTransactionTransientValue("WcHeaderId");
    pageContext.putTransactionTransientValue("WcHeaderId",wcHeader);
    Till here we are able to put the Parmeter in Tranasction
    After calling the custom page from standard page while we are using the Transaction value it is returning null.
    Custom page CO
    PR
    String wcHeader=(String)pageContext.getTransactionTransientValue("WcHeaderId");
    we are getting nulll here.
    Please provide the solution for this
    Thanks,
    Narayana

    Hi Meher Irk,
    i got WcHeaderid value in Custom CO. but i want to set value Custome page to Standard page in custom page i have a total value this value i want to set to Standard page.
    Custom CO code
    /*===========================================================================+
    | Copyright (c) 2001, 2005 Oracle Corporation, Redwood Shores, CA, USA |
    | All rights reserved. |
    +===========================================================================+
    | HISTORY |
    +===========================================================================*/
    package xxbb.oracle.apps.pos.xxwc.webui;
    import oracle.apps.fnd.common.VersionInfo;
    import oracle.apps.fnd.framework.webui.OAControllerImpl;
    import oracle.apps.fnd.framework.webui.OAPageContext;
    import oracle.apps.fnd.framework.webui.beans.OAWebBean;
    import xxbb.oracle.apps.pos.xxwc.server.WithholdAMImpl;
    import oracle.apps.fnd.framework.OAException;
    import oracle.apps.fnd.framework.server.OADBTransaction;
    import oracle.cabo.ui.validate.Formatter;
    import oracle.apps.fnd.framework.webui.OADecimalValidater;
    import oracle.apps.fnd.framework.webui.OAWebBeanConstants;
    import oracle.apps.fnd.framework.webui.beans.table.OAColumnBean;
    import oracle.apps.fnd.common.MessageToken;
    import oracle.apps.fnd.framework.*;
    import oracle.apps.fnd.framework.webui.*;
    import oracle.apps.fnd.framework.webui.beans.table.OATableFooterBean;
    import oracle.apps.fnd.framework.webui.beans.message.OAMessageStyledTextBean;
    import oracle.apps.fnd.framework.webui.beans.message.OAMessageTextInputBean;
    import oracle.apps.fnd.framework.webui.beans.table.OATableBean;
    import oracle.apps.fnd.framework.OAApplicationModule;
    import oracle.apps.fnd.framework.server.OAViewRowImpl;
    import oracle.apps.fnd.framework.webui.beans.nav.OAButtonBean;
    import oracle.jbo.domain.Number;
    import java.util.Enumeration;
    import oracle.apps.pos.wc.webui.WcRespondCO;
    //import oracle.apps.pos.wc.webui.*;
    * Controller for ...
    public class WithholdCO extends OAControllerImpl
    public static final String RCS_ID="$Header$";
    public static final boolean RCS_ID_RECORDED =
    VersionInfo.recordClassVersion(RCS_ID, "%packagename%");
    * Layout and page setup logic for a region.
    * @param pageContext the current OA page context
    * @param webBean the web bean corresponding to the region
    public void processRequest(OAPageContext pageContext, OAWebBean webBean)
    super.processRequest(pageContext, webBean);
    OAApplicationModule am = pageContext.getApplicationModule(webBean);
    String wcHeader=new String();
    Formatter formatter=new OADecimalValidater("#,##0.00;(#,##0.00)","#,##0.00;(#,##0.00)");
    OAColumnBean columnBean=(OAColumnBean)webBean.findIndexedChildRecursive("Amountcol");
    columnBean.setAttributeValue(ON_SUBMIT_VALIDATER_ATTR,formatter);
    //String wcHeader=(String)pageContext.getTransactionTransientValue("WcHeaderId");
    pageContext.writeDiagnostics(this,"zzzzzz"+wcHeader,1);
    if(pageContext.getSessionValue("WcHeaderId") != null&& !pageContext.getSessionValue("WcHeaderId").equals(""))
    wcHeader=pageContext.getSessionValue("WcHeaderId").toString();
    pageContext.writeDiagnostics(this,"If get session condition "+wcHeader,1);
    /* OAMessageTextInputBean item=(OAMessageTextInputBean)webBean.findIndexedChildRecursive("item3");
    item.setValue(pageContext,"10");*/
    * Procedure to handle form submissions for form elements in
    * a region.
    * @param pageContext the current OA page context
    * @param webBean the web bean corresponding to the region
    public void processFormRequest(OAPageContext pageContext, OAWebBean webBean)
    super.processFormRequest(pageContext, webBean);
    OAApplicationModule am = pageContext.getApplicationModule(webBean);
    if("AdvancedRN".equals(pageContext.getParameter(SOURCE_PARAM))
    && ADD_ROWS_EVENT.equals(pageContext.getParameter(EVENT_PARAM)))
    am.invokeMethod("xxInsertRow");
    // am.xxInsertRow();
    if(pageContext.getParameter("Save")!=null)
    am.invokeMethod("xxSaveTransaction");
    am.invokeMethod("xxUnitotal");
    OAViewObject vo = (OAViewObject)am.findViewObject("TotalVO1");
    vo.reset();
    vo.next();
    OARow totRow = (OARow)vo.getCurrentRow();
    Number total = (Number)totRow.getAttribute("Total");
    throw new OAException("Records Saved Successfully",OAException.CONFIRMATION);
    if(pageContext.getParameter("Delete")!=null)
    am.invokeMethod("xxDeleteRow");
    am.invokeMethod("xxSaveTransaction");
    //am.xxDeleteRow();
    // am.xxSaveTransaction();
    throw new OAException("Records Deleted Successfully",OAException.CONFIRMATION);
    if(pageContext.getParameter("Close")!=null)
    pageContext.setForwardURL("OA.jsp?page=/oracle/apps/pos/wc/webui/WcRespondPG&param=FrmWithHoldPG"
    ,null
    ,OAWebBeanConstants.KEEP_MENU_CONTEXT
    ,null
    ,null
    ,true
    ,OAWebBeanConstants.ADD_BREAD_CRUMB_YES
    ,OAWebBeanConstants.IGNORE_MESSAGES);
    Thanks,
    Narayana

  • Controller class extension ignored

    Hi,
    in R12, I'm tryng to extend controller in page /oracle/apps/ap/payments/ps/webui/SelectedPsPG 120.9.
    Controller : SelectedPsCO
    Application Module: PsrAM
    To extend oracle.apps.ap.payments.ps.webui.SelectedPsCO I created a new controller in a new package oracle.apps.ap.cust.payments.ps.webui.XxmySelectedPsCO.
    I compiled and deployed it on server.
    In personalization page I updated contoller class value from oracle.apps.ap.payments.ps.webui.SelectedPsCO to oracle.apps.ap.cust.payments.ps.webui.XxmySelectedPsCO.
    I add in custom controller code, on click existing "save" button, a raise of an exception, just to try it.
    I tested my extension but it means not catch the change of controller and ignore the custom raise exception.
    I bounced all services.
    Please help me.
    Lou

    Thanks RMH,
    I activated diagnostic and put messages in controller class.
    Unluckly it doesn't appear.
    After click on svae button I didn't see neither my custom message "MYprocessFormRequest" nor the standard message "processFormRequest".
    Instead I can see "processRequest" and some referement to my custom CO
    [25]:PROCEDURE:[fnd.profiles.Profiles]:getProfileOptionValue: name=FND_DISABLE_OA_CUSTOMIZATIONS; levelID=10002; levelValue=200; levelValueApplID=0
    [25]:PROCEDURE:[fnd.profiles.Profiles]:getProfileOptionValue: name=FND_DISABLE_OA_CUSTOMIZATIONS; levelID=10001; levelValue=0; levelValueApplID=0
    -->*[26]:EVENT:[ap.xxcust.payments.ps.webui.XxinSelectedPsCO]:OAF LOG: Event : Call Process Request, in: oracle.apps.ap.xxcust.payments.ps.webui.XxinSelectedPsCO: Entering Process Request*
    -->*[26]:PROCEDURE:[ap.xxcust.payments.ps.webui.XxinSelectedPsCO]:processRequest - begin*
    -->*[26]:PROCEDURE:[ap.xxcust.payments.ps.webui.XxinSelectedPsCO]:processRequest - begin*[26]:PROCEDURE:[ap.payments.psr.server.PsrAMImpl]:queryPsrSummary - begin
    [29]:PROCEDURE:[ap.payments.psr.server.PsrAMImpl]:queryPsrSummary - end
    [29]:PROCEDURE:[ap.payments.psr.server.PsrAMImpl]:queryCurrTotals - begin
    [32]:PROCEDURE:[ap.payments.psr.server.PsrAMImpl]:queryCurrTotals - end
    [32]:PROCEDURE:[ap.payments.psr.server.PsrAMImpl]:querySelectedPs - begin
    [37]:PROCEDURE:[ap.payments.psr.server.PsrAMImpl]:querySelectedPs - end
    *-->[38]:PROCEDURE:[ap.xxcust.payments.ps.webui.XxinSelectedPsCO]:processRequest - end*
    [39]:PROCEDURE:[ap.payments.psr.server.PsrAMImpl]:queryPsrSummary - begin
    [41]:PROCEDURE:[ap.payments.psr.server.PsrAMImpl]:queryPsrSummary - end
    [42]:PROCEDURE:[ap.payments.psr.server.PsrAMImpl]:queryCurrTotals - begin
    [44]:PROCEDURE:[ap.payments.psr.server.PsrAMImpl]:queryCurrTotals - end
    [44]:PROCEDURE:[ap.payments.psr.server.PsrAMImpl]:querySelectedPs - begin
    [49]:PROCEDURE:[ap.payments.psr.server.PsrAMImpl]:querySelectedPs - end
    *-->[50]:PROCEDURE:[ap.xxcust.payments.ps.webui.XxinSelectedPsCO]:processRequest - end*
    So my personalisation seems picked up but processFormRequest is not fired.
    cheers
    Lou

Maybe you are looking for

  • How to protect your .flv files on a server?

    So I have a .swf which references playback of some .flv files on my server....Is there a way to protect these .flv files from access through any means other than with the .swf controls I have created?  Currently I can simply type in the url location

  • Deleting photo's from iphone

    How can I delete photos on my phone from photo stream and/or camera roll without having to do it one by one from my iphone? I have hundreds of photo's that I have transferred onto my computer and I really need to free up some space on my phone. All t

  • Purchase Order Form Personalization

    Dears, I want to Personalize the Purchase Order form , i want to disable all the field in the header and lines and including the buttons like - Currency ,Shipments. I want to Personalize this form for a certain responsiblity. Thanks in Advance! Rehan

  • Office 2013 cannot open documents from SharePoint 2007 with IE 11.

    Hei  One of my client cannot open word documents (office 2013) from SharePoint 2007 with IE11. Are there any compatibility issues among Office 2013/SharePoint 2007/Internet Explorer 11? Thanks in advance.  

  • Can I create a calendar on my mac to share with students using ipads?

    Students at my school will be using iPads starting this fall. I want to know whether I can create a calendar on my Mac in iCal to share with students using iPads. Would the calendar appear in their iPad Calendar app? Would they be able to make any ch