2 Replies Latest reply: Mar 28, 2013 11:05 PM by 999725 RSS

    How to set the firepartialaction for an extended VO attribute

    999725
      Hi,

      I have a requirement to extend a VO to include 2 fileds. The second field should be displayed only if the first one is selected.
      I have done the extension and made the first attribute as a message checkbox.

      Tried to extend the controller by adding the VO to AM(as it is an extended VO) in the PR of the controller.

      But i am not sure of how to fire the partial action for the first field in the PFR of the controller. Please help.

      Thanks,
      Malar
        • 1. Re: How to set the firepartialaction for an extended VO attribute
          Timo Hahn
          Can ouy please tell us your jdev version?

          I know VO and AM but what ar PR and PFR?

          Do you use adf rich faces and your problem is on hte page?
          Please elaborate on your use case.

          Timo
          • 2. Re: How to set the firepartialaction for an extended VO attribute
            999725
            Hi Timo,

            My jdev version is 10.1.3.3.0, this is for R12. By PR i mean to say process request and PFR process form request in the controller.

            In the Process request of the controller, i am finding the checkbox bean and assigning the firepartialaction for it.

            Later in the process form request for the fired event, i am trying to handle the rendered property of the messagetextinput. Is this a right approach?

            my code below

            public void processRequest(OAPageContext oapagecontext, OAWebBean oawebbean)
            {
            super.processRequest(oapagecontext, oawebbean);
            OAApplicationModule oaapplicationmodule = oapagecontext.getApplicationModule(oawebbean);
            OAMessageCheckBoxBean oamessagecheckboxbean = (OAMessageCheckBoxBean)oawebbean.findChildRecursive("X_FLAG");
            if(oamessagecheckboxbean != null)
            {
            oapagecontext.writeDiagnostics(this, "Message check box Bean found:", 1);
            FirePartialAction firepartialaction = new FirePartialAction("change");
            oamessagecheckboxbean.setAttributeValue(PRIMARY_CLIENT_ACTION_ATTR, firepartialaction);
            oamessagecheckboxbean.setFireActionForSubmit("change", null, null, true);
            oapagecontext.writeDiagnostics(this, "setting fire event", 1);
            }

            }
            public void processFormRequest(OAPageContext oapagecontext, OAWebBean oawebbean)
            {
            super.processFormRequest(oapagecontext, oawebbean);
            oapagecontext.writeDiagnostics(this, "Inside Process Form Request", 1);
            if("change".equals(oapagecontext.getParameter(OAWebBeanConstants.EVENT_PARAM)))
            {
            OAMessageTextInputBean bean = (OAMessageTextInputBean)oawebbean.findChildRecursive("X_NUMBER");
            if(bean!=null){
            bean.setRendered(Boolean.TRUE);}
            }
            }
            }

            Thanks,
            Malar