Unable to call the backend action method

Hi,
First of all,I would like to let you know that I am not very much familiar with jsf. My problem is as follows:
I have a jsf page having some input text boxes,one gridview component( Infragistics jsf component) and a submit button. On submit, I am trying to call one managedbean action method. The gridview component has further two columns,one input text box and one h:selectonemenu component.
When I try to submit the page, it doesn't call the managedbean action method.The gridview component has one attribute called datasource which is basically a list.During debugging, I found that on submitting the page, it goes to getter of datasource.
One thing I noticed that If I remove the h:selectonemenu from the gridview component, the action method gets called.
Can any body please suggest me where could be the problem?
Thank you

Hi Guys,
Thanks for your solutions and answers. My problem was solved.
But again I have similar kind of problem. This time I have h:selectOneRadio component which seems to be causing the problem because if I remove this, the call goes to action method. It's again seems to be conversion or validation error.As suggested,I have tried putting <h:message> for this component but I get a warn message in console like "Unable to find component with ID 'categorylist' in view". I further saw in the html source of the page and indeed found that the id was not there.I have no idea about it,why it's happening.
I have following code snippet for jsp page:
<div id="inner_body" style="height: 550px;">
                              <h:outputText value="#{msg.Manage_MED_CLASS}" styleClass="title" />
                              <h:messages globalOnly="true" styleClass="error" />
                              <f:verbatim>
                                   <br />
                                   <br />
                              </f:verbatim>
                              <br />
                              <ig:gridView id="medclassdefnitionlist"
                                   dataSource="#{medClassManagedBean.medClassDefinitions}">
                                   <ig:column>
                                        <f:facet name="header">
                                             <h:outputText value="Med class definition"></h:outputText>
                                        </f:facet>
                                        <h:outputText value="#{DATA_ROW.medClassDef}"></h:outputText>
                                   </ig:column>
                                   <ig:column>
                                        <f:facet name="header">
                                             <h:outputText value="Classification(Controlled/Uncontrolled)"></h:outputText>
                                        </f:facet>
                                        <h:selectOneRadio id="categorylist"
                                             value="#{DATA_ROW.medClassCategory}"
                                             style="white-space: nowrap">
                                             <f:selectItem itemLabel="Yes" itemValue="true" id="itemid1"/>
                                                  <f:selectItem itemLabel="No" itemValue="false" id="itemid2"/>
                                        </h:selectOneRadio>
                                        <h:message for="categorylist" styleClass="error"></h:message>
                                   </ig:column>
                              </ig:gridView>
                              <f:verbatim>
                                   <br />
                                   <br />
                              </f:verbatim>
                              <h:panelGrid columns="2" cellpadding="4" cellspacing="3">
                                   <h:commandButton image="../../../images/btn_save.gif"
                                        accesskey="S"
                                        action="#{medClassManagedBean.saveMedClassDefinition}"
                                        style="outline: none;"></h:commandButton>
                                   <h:commandButton accesskey="C" style="outline: none;"
                                        image="../../../images/btn_cancel.gif"
                                        action="backtoreportinglevel" />
                              </h:panelGrid>
                         </div>Under ig:gridView component, I have two columns, in the first one h;outputtext is there while in the 2nd one h:selectOneRadio is there. I tried putting immediate="true" in h:commandButton , and then the call goes to the action method. So, it is definitely failing in either validation or conversion phase.
The following is my java code snippet:
public ArrayList<MedClassBackingBean> getMedClassDefinitions() {
          try {
               medClassDefinitions = new ArrayList<MedClassBackingBean>();
               HttpServletRequest request = (HttpServletRequest) FacesContext
                         .getCurrentInstance().getExternalContext().getRequest();
               HttpSession session = request.getSession();
               String hospitalCode = (String) session
                         .getAttribute(Constants.HOS_GLO_EXCLUSION_SESSION_VAR);
               MedGroupBD medGroupBd = new MedGroupBD();
               List<Object[]> medClassList = medGroupBd
                         .getMedClassDefinitionsForHospital(hospitalCode);
               //populateMedClassCategoryList();
               if (UtilityFunctions.isNotEmpty(medClassList)) {
                    for (Object[] medClass : medClassList) {
                         MedClassBackingBean medClassBackingBean = new MedClassBackingBean();
                         medClassBackingBean.setHospitalCode(hospitalCode);
                         medClassBackingBean.setMedClassDef(medClass[0].toString());
                         if (medClass[1] != null) {
                              if (medClass[1].toString().equals("Controlled")) {
                                   medClassBackingBean.setMedClassCategory("true");
                              } else {
                                   medClassBackingBean.setMedClassCategory("false");
                         } else {
                              medClassBackingBean.setMedClassCategory("false");
                         medClassDefinitions.add(medClassBackingBean);
          } catch (Exception e) {
               log.error(e.getMessage(), e.getCause());
          return medClassDefinitions;
     }The above code returns the list for the ig:gridView datasource. "medClassCategory" is the property of backing bean which is mapped for the value attribute of h:selectOneRadio component. The managed bean is in the request scope.Right now on submit of form, first the call goes to this method "getMedClassDefinitions" and then I found like call goes to setter of medClassCategory property in the backing bean as well and sets the changed value from the UI but it never goes to the action method.
Please see if anybody can help me.
Thank you,
Edited by: dacsinha on Nov 27, 2009 6:36 AM

Similar Messages

  • Unable to call the RFC from the WD java Program

    Hi All,
    I have a table and three buttons Create, Edit, Save in the layout.
    If no record available in the R3 the the end user will click on create and then he will click on save so that the insert RFC will be called accordingly and the record will be inserted.My table is limited to 5 records only. If  i enter all the 5 records and Click on submit the record is inserting in the backend , but if i enter less than 5 records im unable to call the RFC what might be the issue. 
    My insert RFC takes one Table node and 4 import parameters i'm passing all of the all the mentioned import parameters.
    Code:-
    View Controller code
    // This file has been generated partially by the Web Dynpro Code Generator.
    // MODIFY CODE ONLY IN SECTIONS ENCLOSED BY @@begin AND @@end.
    // ALL OTHER CHANGES WILL BE LOST IF THE FILE IS REGENERATED.
    package com.gmr.ess;
    // IMPORTANT NOTE:
    // ALL IMPORT STATEMENTS MUST BE PLACED IN THE FOLLOWING SECTION ENCLOSED
    // BY @@begin imports AND @@end. FURTHERMORE, THIS SECTION MUST ALWAYS CONTAIN
    // AT LEAST ONE IMPORT STATEMENT (E.G. THAT FOR IPrivateAPPView).
    // OTHERWISE, USING THE ECLIPSE FUNCTION "Organize Imports" FOLLOWED BY
    // A WEB DYNPRO CODE GENERATION (E.G. PROJECT BUILD) WILL RESULT IN THE LOSS
    // OF IMPORT STATEMENTS.
    //@@begin imports
    import java.math.BigDecimal;
    import java.util.Date;
    import java.text.DateFormat;
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.ArrayList;
    import java.util.Calendar;
    import java.util.Collection;
    import java.util.Iterator;
    import com.gmr.ess.wdp.IPrivateAPPView;
    import com.gmr.pck.Zst_Hr_Nominee;
    import com.sap.tc.webdynpro.progmodel.api.IWDMessageManager;
    import com.sap.tc.webdynpro.services.sal.um.api.IWDClientUser;
    import com.sap.tc.webdynpro.services.sal.um.api.WDClientUser;
    //@@end
    //@@begin documentation
    //@@end
    public class APPView
    Logging location.
      private static final com.sap.tc.logging.Location logger =
        com.sap.tc.logging.Location.getLocation(APPView.class);
      static
        //@@begin id
        String id = "$Id$";
        //@@end
        com.sap.tc.logging.Location.getLocation("ID.com.sap.tc.webdynpro").infoT(id);
    Private access to the generated Web Dynpro counterpart
    for this controller class.  </p>
    Use <code>wdThis</code> to gain typed access to the context,
    to trigger navigation via outbound plugs, to get and enable/disable
    actions, fire declared events, and access used controllers and/or
    component usages.
    @see com.gmr.ess.wdp.IPrivateAPPView for more details
      private final IPrivateAPPView wdThis;
    Root node of this controller's context. </p>
    Provides typed access not only to the elements of the root node
    but also to all nodes in the context (methods node<i>XYZ</i>())
    and their currently selected element (methods current<i>XYZ</i>Element()).
    It also facilitates the creation of new elements for all nodes
    (methods create<i>XYZ</i>Element()). </p>
    @see com.gmr.ess.wdp.IPrivateAPPView.IContextNode for more details.
      private final IPrivateAPPView.IContextNode wdContext;
    A shortcut for <code>wdThis.wdGetAPI()</code>. </p>
    Represents the generic API of the generic Web Dynpro counterpart
    for this controller. </p>
      private final com.sap.tc.webdynpro.progmodel.api.IWDViewController wdControllerAPI;
    A shortcut for <code>wdThis.wdGetAPI().getComponent()</code>. </p>
    Represents the generic API of the Web Dynpro component this controller
    belongs to. Can be used to access the message manager, the window manager,
    to add/remove event handlers and so on. </p>
      private final com.sap.tc.webdynpro.progmodel.api.IWDComponent wdComponentAPI;
      public APPView(IPrivateAPPView wdThis)
        this.wdThis = wdThis;
        this.wdContext = wdThis.wdGetContext();
        this.wdControllerAPI = wdThis.wdGetAPI();
        this.wdComponentAPI = wdThis.wdGetAPI().getComponent();
      //@@begin javadoc:wdDoInit()
      /** Hook method called to initialize controller. */
      //@@end
      public void wdDoInit()
        //@@begin wdDoInit()
        try{
              IWDMessageManager manager1 = wdComponentAPI.getMessageManager();
              IWDClientUser user = WDClientUser.getLoggedInClientUser();
              String logUser= user.getSAPUser().getUniqueName();
              wdContext.currentContextElement().setUserid(logUser);
              wdThis.wdGetAPPController().executeBapi_Employee_Getdata_Input();//Returns the user id for the employee
              Collection nomineeList = new ArrayList();
              wdThis.wdGetAPPController(). executeZ_Hrfm_Nominee_Disp_Input( );          
              int nomineeTableSize = wdContext.nodeZ_Hrfm_Nominee_Disp_Input().nodeOutput_Nominee().nodeNominee().size();
              for(int i=0;i< nomineeTableSize;i++){          
                IPrivateAPPView.IDisplay_table_nodeElement ele = wdContext.nodeDisplay_table_node().createDisplay_table_nodeElement();
                ele.setAddr(wdContext.nodeZ_Hrfm_Nominee_Disp_Input().nodeOutput_Nominee().nodeNominee().getNomineeElementAt(i).getAddr());
                ele.setDob(wdContext.nodeZ_Hrfm_Nominee_Disp_Input().nodeOutput_Nominee().nodeNominee().getNomineeElementAt(i).getDob());
                ele.setGuard(wdContext.nodeZ_Hrfm_Nominee_Disp_Input().nodeOutput_Nominee().nodeNominee().getNomineeElementAt(i).getGuard());
                ele.setName(wdContext.nodeZ_Hrfm_Nominee_Disp_Input().nodeOutput_Nominee().nodeNominee().getNomineeElementAt(i).getName());
                ele.setPerc(wdContext.nodeZ_Hrfm_Nominee_Disp_Input().nodeOutput_Nominee().nodeNominee().getNomineeElementAt(i).getPerc());
                ele.setRelat(wdContext.nodeZ_Hrfm_Nominee_Disp_Input().nodeOutput_Nominee().nodeNominee().getNomineeElementAt(i).getRelat());
                nomineeList.add(ele);
              wdContext.nodeDisplay_table_node().bind(nomineeList);
              wdContext.currentContextElement().setEdit_val_attr(true);
              if(nomineeTableSize<=0){
                   wdContext.currentContextElement().setCreateButtonEnable(true);
                   wdContext.currentContextElement().setEditButtonEnable(false);
              else{
                   wdContext.currentContextElement().setCreateButtonEnable(false);
                   wdContext.currentContextElement().setEditButtonEnable(true);
        catch(Exception e){
              wdComponentAPI.getMessageManager().reportException("",true);
        //@@end
      //@@begin javadoc:wdDoExit()
      /** Hook method called to clean up controller. */
      //@@end
      public void wdDoExit()
        //@@begin wdDoExit()
        //@@end
      //@@begin javadoc:wdDoModifyView
    Hook method called to modify a view just before rendering.
    This method conceptually belongs to the view itself, not to the
    controller (cf. MVC pattern).
    It is made static to discourage a way of programming that
    routinely stores references to UI elements in instance fields
    for access by the view controller's event handlers, and so on.
    The Web Dynpro programming model recommends that UI elements can
    only be accessed by code executed within the call to this hook method.
    @param wdThis Generated private interface of the view's controller, as
           provided by Web Dynpro. Provides access to the view controller's
           outgoing controller usages, etc.
    @param wdContext Generated interface of the view's context, as provided
           by Web Dynpro. Provides access to the view's data.
    @param view The view's generic API, as provided by Web Dynpro.
           Provides access to UI elements.
    @param firstTime Indicates whether the hook is called for the first time
           during the lifetime of the view.
      //@@end
      public static void wdDoModifyView(IPrivateAPPView wdThis, IPrivateAPPView.IContextNode wdContext, com.sap.tc.webdynpro.progmodel.api.IWDView view, boolean firstTime)
        //@@begin wdDoModifyView
        //@@end
      //@@begin javadoc:onActionGetData(ServerEvent)
      /** Declared validating event handler. */
      //@@end
      public void onActionGetData(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
        //@@begin onActionGetData(ServerEvent)
        //$$begin ActionButton(-535519310)
        //wdThis.wdGetAPPController().executeZ_Hrfm_Nominee_Disp_Input();
        //$$end
        //@@end
      //@@begin javadoc:onActionEdit(ServerEvent)
      /** Declared validating event handler. */
      //@@end
      public void onActionEdit(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
        //@@begin onActionEdit(ServerEvent)
       //$$begin ActionButton(-535519310)
       displayTablesize=wdContext.nodeDisplay_table_node().size(); 
       if(displayTablesize<5){
         for(int i=0;i<size-displayTablesize;i++){           
              IPrivateAPPView.IDisplay_table_nodeElement ele = wdContext.nodeDisplay_table_node().createDisplay_table_nodeElement();
              wdContext. nodeDisplay_table_node().addElement(ele);               
       operation="MOD"; 
       wdContext.currentContextElement().setTableReadOnly(true);
       wdContext.currentZ_Hrfm_Nominee_Ins_Mod_InputElement().setOperation(operation);                                 
        //$$end
        //@@end
      //@@begin javadoc:onActionCreate(ServerEvent)
      /** Declared validating event handler. */
      //@@end
      public void onActionCreate(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
        //@@begin onActionCreate(ServerEvent)
         int month=0,year=0,day=0;
         String month1,day1,year1;   
         try{
              displayTablesize=wdContext.nodeDisplay_table_node().size();
              wdContext.currentContextElement().setEdit_val_attr(false);
              if(wdContext.nodeDisplay_table_node().isEmpty()){                    
                   if(displayTablesize<5){
                        Calendar cal=Calendar.getInstance();
                        month=cal.get(Calendar.MONTH)+1;
                        if(month==1||month==2||month==3||month==4||month==5||month==6||month==7||month==8||month==9){
                             month1="0"+month;
                        else{
                             month1=""+month;                                   
                        day = cal.get(Calendar.DAY_OF_MONTH);
                             if(day==1||day==2||day==3||day==4||day==5||day==6||day==7||day==8||day==9){
                             day1=  "0"+day;
                        else{
                             day1=""+day;
                        year = cal.get(Calendar.YEAR);
                        year1=""+year;
                        String strFormat=day1"."month1"."year1;                    
                        wdContext.currentOutput_NomineeElement().setBegda(strFormat);
                        wdContext.currentOutput_NomineeElement().setEndda("31.12.9999");                         
                        for(int i=0;i<size-displayTablesize;i++){           
                             IPrivateAPPView.IDisplay_table_nodeElement ele = wdContext.nodeDisplay_table_node().createDisplay_table_nodeElement();
                             wdContext. nodeDisplay_table_node().addElement(ele);               
                   operation="INS";
                   wdContext.currentZ_Hrfm_Nominee_Ins_Mod_InputElement().setOperation(operation);                    
              wdContext.currentContextElement().setTableReadOnly(true);          
         catch(NullPointerException npe){
              wdComponentAPI.getMessageManager().reportException("No Data Available",true);
        //@@end
      //@@begin javadoc:onActionSaveData(ServerEvent)
      /** Declared validating event handler. */
      //@@end
      public void onActionSaveData(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
        //@@begin onActionSaveData(ServerEvent)
         float percentage=0;
         float dupePercentage=0;
         boolean isTest = false;
         Collection DispTList =      new ArrayList();
         IWDMessageManager manager1 = wdComponentAPI.getMessageManager();
         try{
              displayTablesize = wdContext.nodeDisplay_table_node().size();
              //for(int     i=1;i<=displayTablesize;i++){
              for(int     i=0;i<displayTablesize;i++){
                   BigDecimal share = wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getPerc();
                   String name =  wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getName();
                   percentage = share.floatValue();
                   dupePercentage = dupePercentage + percentage;
                   if(name!=null && share!=null){                    
                        Zst_Hr_Nominee nominee = new Zst_Hr_Nominee();
                        nominee.setAddr(wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getAddr());
                       manager1.reportSuccess(wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getAddr());               
                        nominee.setDob(wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getDob());     
                        manager1.reportSuccess(""+wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getDob());               
                        nominee.setGuard(wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getGuard());     
                       manager1.reportSuccess(""+wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getGuard());               
                        nominee.setName(wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getName());
                       manager1.reportSuccess(""+wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getName());                    
                        nominee.setPerc(wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getPerc());
                       manager1.reportSuccess(""+wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getPerc());
                        nominee.setRelat(wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getRelat());     
                       manager1.reportSuccess(""+wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getRelat());               
                        DispTList.add(nominee);     
                   wdContext.nodeZ_Hrfm_Nominee_Ins_Mod_Input().nodeNominee_ins().bind(DispTList);
              if((dupePercentage)!=100)
              wdComponentAPI.getMessageManager().reportException(
                        "The sum of the share Percentages is not 100. Modify the percentages accordingly",true);
              wdContext.nodeZ_Hrfm_Nominee_Ins_Mod_Input().nodeNominee_ins().bind(DispTList);
              IWDMessageManager manager = wdComponentAPI.getMessageManager();
              String beginDate = wdContext.currentOutput_NomineeElement().getBegda();
              manager.reportSuccess(wdContext.currentOutput_NomineeElement().getBegda());
              String endDate=wdContext.currentOutput_NomineeElement().getEndda();
              manager.reportSuccess(wdContext.currentOutput_NomineeElement().getEndda());
              wdContext.currentZ_Hrfm_Nominee_Ins_Mod_InputElement().setBegda(beginDate);
              wdContext.currentZ_Hrfm_Nominee_Ins_Mod_InputElement().setEndda(endDate);          
              wdContext.currentZ_Hrfm_Nominee_Ins_Mod_InputElement().setOperation(operation);
              wdComponentAPI.getMessageManager().reportSuccess(operation);     
              wdThis.wdGetAPPController().executeBapi_Employee_Getdata_Input();
              wdThis.wdGetAPPController().executeZ_Hrfm_Nominee_Ins_Mod_Input();           
              //wdContext.currentContextElement().setTableReadOnly(false);
         catch(Exception e){
              e.getMessage();
        //@@end
    The following code section can be used for any Java code that is
    not to be visible to other controllers/views or that contains constructs
    currently not supported directly by Web Dynpro (such as inner classes or
    member variables etc.). </p>
    Note: The content of this section is in no way managed/controlled
    by the Web Dynpro Designtime or the Web Dynpro Runtime.
      //@@begin others
      int nomineeTableSize = 0;
      int displayTablesize = 0;
      String operation= null;
      int size=5;
    // float dupePercentage=0;
      //String mod_op="MOD";
      //@@end
    content of obsolete user coding area(s) -
    //@@begin obsolete:javadoc:onActionSave(ServerEvent)
    //  /** Declared validating even
    Component controller code
    // This file has been generated partially by the Web Dynpro Code Generator.
    // MODIFY CODE ONLY IN SECTIONS ENCLOSED BY @@begin AND @@end.
    // ALL OTHER CHANGES WILL BE LOST IF THE FILE IS REGENERATED.
    package com.gmr.ess;
    // IMPORTANT NOTE:
    // ALL IMPORT STATEMENTS MUST BE PLACED IN THE FOLLOWING SECTION ENCLOSED
    // BY @@begin imports AND @@end. FURTHERMORE, THIS SECTION MUST ALWAYS CONTAIN
    // AT LEAST ONE IMPORT STATEMENT (E.G. THAT FOR IPrivateAPP).
    // OTHERWISE, USING THE ECLIPSE FUNCTION "Organize Imports" FOLLOWED BY
    // A WEB DYNPRO CODE GENERATION (E.G. PROJECT BUILD) WILL RESULT IN THE LOSS
    // OF IMPORT STATEMENTS.
    //@@begin imports
    import java.util.Iterator;
    import com.gmr.ess.wdp.IPrivateAPP;
    import com.gmr.pck.Bapi_Employee_Getdata_Input;
    import com.gmr.pck.Bapip0002B;
    import com.gmr.pck.Z_Hrfm_Nominee_Disp_Input;
    import com.gmr.pck.Z_Hrfm_Nominee_Ins_Mod_Input;
    import com.gmr.pck.Zst_Hr_Nominee;
    import com.sap.lcr.api.util.SetProfileConnect;
    import com.sap.tc.webdynpro.modelimpl.dynamicrfc.WDDynamicRFCExecuteException;
    import com.sap.tc.webdynpro.progmodel.api.IWDMessageManager;
    //@@end
    //@@begin documentation
    //@@end
    public class APP
    Logging location.
      private static final com.sap.tc.logging.Location logger =
        com.sap.tc.logging.Location.getLocation(APP.class);
      static
        //@@begin id
        String id = "$Id$";
        //@@end
        com.sap.tc.logging.Location.getLocation("ID.com.sap.tc.webdynpro").infoT(id);
    Private access to the generated Web Dynpro counterpart
    for this controller class.  </p>
    Use <code>wdThis</code> to gain typed access to the context,
    to trigger navigation via outbound plugs, to get and enable/disable
    actions, fire declared events, and access used controllers and/or
    component usages.
    @see com.gmr.ess.wdp.IPrivateAPP for more details
      private final IPrivateAPP wdThis;
    Root node of this controller's context. </p>
    Provides typed access not only to the elements of the root node
    but also to all nodes in the context (methods node<i>XYZ</i>())
    and their currently selected element (methods current<i>XYZ</i>Element()).
    It also facilitates the creation of new elements for all nodes
    (methods create<i>XYZ</i>Element()). </p>
    @see com.gmr.ess.wdp.IPrivateAPP.IContextNode for more details.
      private final IPrivateAPP.IContextNode wdContext;
    A shortcut for <code>wdThis.wdGetAPI()</code>. </p>
    Represents the generic API of the generic Web Dynpro counterpart
    for this controller. </p>
      private final com.sap.tc.webdynpro.progmodel.api.IWDComponent wdControllerAPI;
    A shortcut for <code>wdThis.wdGetAPI().getComponent()</code>. </p>
    Represents the generic API of the Web Dynpro component this controller
    belongs to. Can be used to access the message manager, the window manager,
    to add/remove event handlers and so on. </p>
      private final com.sap.tc.webdynpro.progmodel.api.IWDComponent wdComponentAPI;
      public APP(IPrivateAPP wdThis)
        this.wdThis = wdThis;
        this.wdContext = wdThis.wdGetContext();
        this.wdControllerAPI = wdThis.wdGetAPI();
        this.wdComponentAPI = wdThis.wdGetAPI().getComponent();
      //@@begin javadoc:wdDoInit()
      /** Hook method called to initialize controller. */
      //@@end
      public void wdDoInit()
        //@@begin wdDoInit()
        //$$begin Service Controller(1490375209)
    //    wdContext.nodeZ_Hrfm_Nominee_Ins_Mod_Input().bind(new Z_Hrfm_Nominee_Ins_Mod_Input());
         Z_Hrfm_Nominee_Ins_Mod_Input input = new Z_Hrfm_Nominee_Ins_Mod_Input();
         input.addNominee(new Zst_Hr_Nominee());
         wdContext.nodeZ_Hrfm_Nominee_Ins_Mod_Input().bind(input);
        //$$end
        //$$begin Service Controller(-932523997)
        wdContext.nodeZ_Hrfm_Nominee_Disp_Input().bind(new Z_Hrfm_Nominee_Disp_Input());
        //$$end
        //$$begin Service Controller(-368783613)
        wdContext.nodeBapi_Employee_Getdata_Input().bind(new Bapi_Employee_Getdata_Input());
        //$$end
        //@@end
      //@@begin javadoc:wdDoExit()
      /** Hook method called to clean up controller. */
      //@@end
      public void wdDoExit()
        //@@begin wdDoExit()
        //@@end
      //@@begin javadoc:wdDoPostProcessing()
    Hook called to handle data retrieval errors before rendering.
    After doModifyView(), the Web Dynpro Framework gets all context data needed
    for rendering by validating the contexts (which in turn calls the supply
    functions and supplying relation roles). In this hook, the application
    should handle the errors which occurred during validation of the contexts.
    Using preorder depth-first traversal, this hook is called for all component
    controllers starting with the current root component.
    Permitted operations:
    - Flushing model queue
    - Creating messages
    - Reading context and model data
    Forbidden operations:
    - Invalidating model data
    - Manipulating the context
    - Firing outbound plugs
    - Creating components
    @param isCurrentRoot true if this is the root of the current request
      //@@end
      public void wdDoPostProcessing(boolean isCurrentRoot)
        //@@begin wdDoPostProcessing()
        //@@end
      //@@begin javadoc:wdDoBeforeNavigation()
    Hook before the navigation phase starts.
    This hook allows you to flush the model queue and handle any
    errors that occur. Firing outbound plugs is allowed in this hook.
    Using preorder depth-first traversal, this hook is called for all component
    controllers starting with the current root component.
    @param isCurrentRoot true if this is the root of the current request
      //@@end
      public void wdDoBeforeNavigation(boolean isCurrentRoot)
        //@@begin wdDoBeforeNavigation()
        //@@end
      //@@begin javadoc:wdDoApplicationStateChange()
    Hook that informs the application about a state change.
    <p>
    This hook is called e.g. to tell the application that will be
    <ul>
    <li>left via a suspend plug and therefore should go into a suspend/sleep
         mode with minimal need of resources. errors that occur. Firing
         outbound plugs is allowed in this hook.
    <li>left due to a timeout and could write it's state to a data base if the
         user comes back later on
    </ul>
    The concrete reason is available via IWDApplicationStateChangeInfo
    <p>
    <b>Important</b>: This hook is called for the top level component only!
    @param stateChangeInfo contains the information about the nature of the state change
    @param stateChangeReturn allows the application to ask for a different state change.
           The framework is allowed to ignore it considering i.e. the current resources situation.
      //@@end
      public void wdDoApplicationStateChange(com.sap.tc.webdynpro.progmodel.api.IWDApplicationStateChangeInfo stateChangeInfo, com.sap.tc.webdynpro.progmodel.api.IWDApplicationStateChangeReturn stateChangeReturn)
        //@@begin wdDoApplicationStateChange()
        //@@end
      //@@begin javadoc:executeBapi_Employee_Getdata_Input()
      /** Declared method. */
      //@@end
      public void executeBapi_Employee_Getdata_Input( )
        //@@begin executeBapi_Employee_Getdata_Input()
        //$$begin Service Controller(1705750894)
        IWDMessageManager manager = wdComponentAPI.getMessageManager();
         Iterator itrGetData = null;
                             Bapip0002B out = null;
        try
          wdContext.currentBapi_Employee_Getdata_InputElement().modelObject().execute();
          wdContext.nodeOutput().invalidate();
           itrGetData = wdContext.currentOutputElement().modelObject().getPersonal_Data().iterator();
           while (itrGetData.hasNext()) {
               out = (Bapip0002B) itrGetData.next();
          empNo = out.getPerno();
          wdContext.currentZ_Hrfm_Nominee_Disp_InputElement().setPernr(empNo);
         wdContext.currentZ_Hrfm_Nominee_Ins_Mod_InputElement().setPernr(empNo);
    //      manager.reportSuccess(empNo);
         //wdThis.executeZ_Hrfm_Nominee_Disp_Input();
        catch(WDDynamicRFCExecuteException e)
          manager.reportException(e.getMessage(), false);
        //$$end
        //@@end
      //@@begin javadoc:executeZ_Hrfm_Nominee_Disp_Input()
      /** Declared method. */
      //@@end
      public void executeZ_Hrfm_Nominee_Disp_Input( )
        //@@begin executeZ_Hrfm_Nominee_Disp_Input()
        //$$begin Service Controller(-366407911)
        IWDMessageManager manager = wdComponentAPI.getMessageManager();
        try
          wdContext.currentZ_Hrfm_Nominee_Disp_InputElement().modelObject().execute();
          wdContext.nodeOutput_Nominee().invalidate();
        catch(WDDynamicRFCExecuteException e)
          manager.reportException(e.getMessage(), false);
        //$$end
        //@@end
      //@@begin javadoc:executeZ_Hrfm_Nominee_Ins_Mod_Input()
      /** Declared method. */
      //@@end
      public void executeZ_Hrfm_Nominee_Ins_Mod_Input( )
        //@@begin executeZ_Hrfm_Nominee_Ins_Mod_Input()
        //$$begin Service Controller(1524028406)
        IWDMessageManager manager = wdComponentAPI.getMessageManager();
        try
          wdContext.currentZ_Hrfm_Nominee_Ins_Mod_InputElement().modelObject().execute();
          wdContext.nodeOutput_nominee_ins_mod().invalidate();
        catch(WDDynamicRFCExecuteException e)
          manager.reportException(e.getMessage(), false);
        //$$end
        //@@end
    The following code section can be used for any Java code that is
    not to be visible to other controllers/views or that contains constructs
    currently not supported directly by Web Dynpro (such as inner classes or
    member variables etc.). </p>
    Note: The content of this section is in no way managed/controlled
    by the Web Dynpro Designtime or the Web Dynpro Runtime.
      //@@begin others
      String empNo = null;
      //@@end
    Suman
    Edited by: sumankumar kurimilla on Dec 23, 2008 9:26 AM

    Hi,
    I have checked from RFC side that is working fine only java app its not working can you tell any thing needs to be changed from my application end.
    Please check in Savedata action.
    Regards,
    Suman
    Edited by: sumankumar kurimilla on Dec 23, 2008 11:01 AM

  • How to call the screen in methods could u please explain

    hi,
    how to call the screen in methods could u please explain clearly with example

    HI ,
    CALL SCREEN - Call a screen
    Basic form
    CALL SCREEN scr.
    Addition:
    ... STARTING AT x1 y1 ... ENDING AT x2 y2
    Effect
    Calls the screen scr; scr is the number of a screen of the main program. You use SET SCREEN 0. or LEAVE SCREEN. to define the return from the CALL screen.
    Note
    Please consult Data Area and Modularization Unit Organization documentation as well.
    Addition
    ... STARTING AT x1 y1  ENDING AT x2 y2
    Effect
    The coordinates x1, y1 (start column and start line in the window) and x2, y2 (end column and end line in the window) define the size and position of the CALL screen ("top left - bottom right"). Besides these coordinates, you can also see the contents of the primary window, but cannot perform any action there.
    Note
    If "ENDING AT ..." is not specified, suitable values are substituted for x2 and y2, taking into account the size of the called screen.
    Exceptions
    Non-Catchable Exceptions
    Cause: No further screen level (call screen); the maximum number of nested screen levels is restricted to 50 at present.
    Runtime Error: DYNP_TOO_MANY_CALL_SCREENS
    THX

  • Server error when calling the DatabaseController.replaceConnection() method

    <p>I am receiving the error message below when calling the DatabaseController.replaceConnection() method. Can anyone tell me what may be the cause of this? The code being executed is below the error message.
    </p>
    <p>
    Thank you.
    </p>
    <pre>
    A server error occured while processing the CrystalReport object, wfr.rpt (AVTJyRKrfDxKtXX31l5E9Ek), from the CMS.
        Unable to connect to the server: ATHENA.ReportApplicationServer.
         --- java.lang.Boolean cannot be cast to java.lang.String
    Stack Trace:
    com.crystaldecisions.sdk.occa.report.lib.ReportSDKServerException: Unable to connect to the server:
        ATHENA.ReportApplicationServer. - java.lang.Boolean cannot be cast to java.lang.String--
        Error code:-2147217387 Error code name:connectServer
            at com.crystaldecisions.sdk.occa.report.lib.ReportSDKServerException.
                    throwReportSDKServerException(Unknown Source)
            at com.crystaldecisions.sdk.occa.managedreports.ras.internal.CECORBACommunicationAdapter.
                    request(Unknown Source)
            at com.crystaldecisions.proxy.remoteagent.y.a(Unknown Source)
            at com.crystaldecisions.proxy.remoteagent.r.a(Unknown Source)
            at com.crystaldecisions.sdk.occa.report.application.cf.a(Unknown Source)
            at com.crystaldecisions.sdk.occa.report.application.DatabaseController.replaceConnection(Unknown Source)
            at aiConfigUtility.cmdlline.ImportExportBiarFile.changeReportDataSource(ImportExportBiarFile.java:561)
            at aiConfigUtility.cmdlline.ImportExportBiarFile.processBiarFile(ImportExportBiarFile.java:726)
    </pre>
    <br />
    <pre>
    private void test(String reportName)
       throws SDKException, ReportSDKException, java.io.IOException
       IInfoObjects newInfoObjects;
       IInfoObject reportObj;
       ReportClientDocument clientDoc = new ReportClientDocument();
       DatabaseController dc;
       PropertyBag pBag;
       PropertyBag logonProps;
       ConnectionInfo newConInfo;
       ConnectionInfo oldConInfo;
       ConnectionInfos conInfos;
       int connOptions = DBOptions._ignoreCurrentTableQualifiers + DBOptions._doNotVerifyDB; //0;
       Fields connFields = null;
       String queryStr = "Select * From CI_INFOOBJECTS " +
          "Where SI_NAME='wfr.rpt' AND SI_KIND='CrystalReport' AND SI_INSTANCE=0";
       newInfoObjects = getCms().executeQuery(queryStr);
       if(newInfoObjects.size() > 0)
          reportObj = (IInfoObject)newInfoObjects.get(0);
          try
             clientDoc = getCms().getReportAppFactory().openDocument(
                reportObj
                , OpenReportOptions._refreshRepositoryObjects
                , java.util.Locale.US);
             dc = clientDoc.getDatabaseController();
             conInfos = dc.getConnectionInfos(null);
             for(int i = 0; i < conInfos.size(); ++i)
                oldConInfo = (ConnectionInfo)conInfos.getConnectionInfo(i);
                newConInfo = (ConnectionInfo)oldConInfo.clone(true);
                pBag = newConInfo.getAttributes();
                pBag.putStringValue("QE_ServerDescription", "alio");
                logonProps = new PropertyBag();
                logonProps.putStringValue("Trusted_Connection", "false");
                logonProps.putStringValue("Server", "alio");
                pBag.put("QE_LogonProperties", logonProps);
                newConInfo.setUserName("admin");
                newConInfo.setPassword("password");
                <b>dc.replaceConnection(
                   oldConInfo
                   , newConInfo
                   , connFields
                   , connOptions);</b>
          catch(ReportSDKServerException Ex)
             String msg = "A server error occured while processing the " + reportObj.getKind()
                + " object, " + reportObj.getTitle() + " (" + reportObj.getCUID() + "), from the CMS.";
             Utility.errorOut(msg, Ex);
          catch(Exception Ex)
             String msg = "An error occured while processing the " + reportObj.getKind()
                + " object, " + reportObj.getTitle() + " (" + reportObj.getCUID() + "), from the CMS.";
             Utility.errorOut(msg, Ex);
          finally
             clientDoc.save();
             getCms().commitToInfoStore(newInfoObjects);
             clientDoc.close();
    </pre>
    Edited by: Mark Young on Sep 10, 2009 2:13 PM

    <p>I just wanted to provide an update to this. I did find a work-around for this, but I cannot explain it. The post I added to a related thread on 23 Sept. 2009, Trying to change the data source for a Crystal Report. (thread 1472257), explains a work-around I found for that problem. It seemed to resolve this one simultaneously. 
    </p>
    <p>
    I don't know why it works. If anyone has a comment or some insight, it is welcome. Thank you in advance.
    </p>

  • How to call the backing bean method through javascript by closing window?

    Hi all,
    What I want to do is:
    I open a new page by clicking <t:commanLink.../> from the first page. Then I close the new page. By closing the new page I will call a function in the backing bean such as myBean.doSomething() to do something. Such like:
    <body onUnload=jsFunction()..../>
    ...

    So far I understand, I should write following code
    in my second page:
    <html>
    <head>
    <script type="txet/javascript">
    function jsFunction()
    {>
    ocument.forms[0].action="#{myBean.doSomething}";
    document.forms[0].submit();
    </scrip>
    </head>
    <body onunload="jsFunction()">
    <ui:composition>
    <h:form id="myForm">
    <t:commandLink id="myLink" immediate="true"
    action="#{myBean.doSomething}"
    value=""></t:commandLink>
    </h:form>
    </ui:composition>
    Is that right? I am not sure if I've the javascript
    in the right position.I am sorry! That solution will not work. My Bad.
    You can try this.
    1) Have a invisible command button on your first page with the action attribute set to "#{myBean.doSomething}" as below
    <t:commandButton style="width:0px;height:0px" id="myButton" immediate="true"
    action="#{myBean.doSomething}"
      value=""></t:commandButton>2) Your JS onunload method on the second page should look like
    <script type="txet/javascript">
       function jsFunction()
    var buttonObject= window.parent.document.getElementById("formname:myButton");
    buttonObject.click(); // This would help in submitting the first page
    // to submit to the needed action method
    </script>Karthik

  • Can a client call the ejb callback methods directly????

    Is there any way using which client can call the ejb callback methods directly.
    ie in the client program i want to call ejbPassivate/ejbActivate?? is there any way of doing the same

    short answer: yes, pass a reference of the ejb (bean class) to the client. This will not do what you expect however and hopefully with generate an error that you should read as "don't do this".
    better answer: you are no longer doing ejb development if you do this. those methods exists for the container to interact with your bean and are NOT meant for clients. You should NEVER do what I suggest in my "short answer".

  • Unable to Call page using action

    Hi Evryone,
    I am getting a simple problem .
    Trying to call xsql page using adfc-config file. in xsql file i am passing two bind params for this using one input page to pass parameter.
    Like
    in report.jspx i have to employeeID and Name my textboxes and command button for call the xsql file.
    1.repot.jspx
    2.employee.xsql.
    3.adfc-config.xml
    in adfc-confing.xml i am taken two views and assigned these two pages(jspx,xsql) for ths flow name given report.
    In my button action given
    <af:commandbutton action="report">
    When i run this report.jspx i am able to view the report. Here dont have a problem.
    When i tried using menu i am unable to view the report.
    in menu i am using af:goLink destination="/faces/report.jspx">. I view the report page after click on the button it wont call the adfc-config. Why if i try to run single page i am able to pass parameter and action will be taken. I will get the report .
    Is there any changes i have to do
    TIA

    An xsql page is not a JSF page and won't be able to navigate with navigation rules defined in the adfc-config.xml
    Only JSF pages can navigate using those rules.
    To navigate from one page to the other use a commandLink or commandButton and set the action to the name of the navigation rule.
    To run open adfc-config.xml and right click on a view activity to choose run.

  • JSF seems to not call a simple action method

    I have a situation where it seems JSF is not performing one of it's basic functions--calling an action method in a backing bean based on a simple JSF EL expression.
    Here's the relevant part of my JSP (the h:subview tags are there because another JSP includes this one):
    -- my.jsp: ------------------------------------------------------------
    <%@ page language="java" %>
    <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
    <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
    <f:subview id="work-area">
    <h:form id="peers-work">
         <h:commandButton id="edit" value="Edit"     action="#{peerBean.edit}" styleClass="actionButton" />
    </h:form>
    </f:subview>
    --------------------------------------------------------------My faces-config.xml defines the "peerBean" as follows:
    -- faces-config.xml: ------------------------------------------------------------
    <faces-config>
      <managed-bean>
        <description>Session bean for performing Peer operations.</description>
        <managed-bean-name>peerBean</managed-bean-name>
        <managed-bean-class>com.myApp.PeerBean</managed-bean-class>
        <managed-bean-scope>session</managed-bean-scope>
      </managed-bean>
      <navigation-rule>
        <from-view-id>/my.jsp</from-view-id>
        <navigation-case>
          <from-outcome>success</from-outcome>
          <to-view-id>/editPeer.jsp</to-view-id>
        </navigation-case>
        <navigation-case>
            <from-outcome>fail</from-outcome>
            <to-view-id>/error.jsp</to-view-id>
          </navigation-case>
        </navigation-rule>
    </faces-config>
    --------------------------------------------------------------And here's the action method in PeerBean:
    -- PeerBean.java ----------------------------------------
    public class PeerBean extends BaseBean implements Serializable {
        public PeerBean() {
        public String edit() {
            logger.debug("in edit().");
            Peer peer = this.getPeer(this.getId() );
            String outcome = "success"; // optimism!
            if (peer == null) {
                outcome = "fail";
            } else {
                this.setId(peer.getId() );
                this.setName(peer.getName() );
                this.setDescription(peer.getDescription() );
            return outcome;
    --------------------------------------------------------------It compiles and runs fine, but when I click on the "Edit" button in my.jsp, the page submits but never enters the "edit" method (based on the fact that the logger call in the method does not write anything to the log.), and it simply re-displays my.jsp (even though it should go to the "success" or "fail" page, according to the navigation rules). I see a bunch of debug messages in the logs from the code that loads the page, but no indication that the edit method is touched. There are no stack traces or errors reported in any of the logs that Tomcat creates for this application.
    Elsewhere in my application, I am able to use commandButton elements to trigger backing bean actions just like I'm trying to do above, and in other places it works fine. I don't know why the above case does not work.
    Also, is there a way to put JSF in a debug mode that shows info such as the navigation outcome processing, JSF EL processing, etc.?
    Any help would be appreciated!
    Thanks,
    Scott

    I see. Thanks for the response.
    I already have message and messages tag in the JSF, but no error message is displayed. Also, there is no error message in the tomcat log.
    I actually found your tutorial ( http://balusc.blogspot.com/2008/01/jsf-tutorial-with-eclipse-and-tomcat.html ) yesterday, so when I saw your response, your name looked familiar but I did not immediately remember why. I Will be going through the tutorial now.
    My application goes as far as the INVOKE APPLICATION phase, but never enters/executes the action method, can anyone please suggest any reason that could be the cause.
    Please see code below:
    JSF - status.jsp
    ============
    <%@ page language="java" contentType="text/html;charset=UTF-8"%>
    <%@ taglib prefix="f" uri="http://java.sun.com/jsf/core"%>
    <%@ taglib prefix="h" uri="http://java.sun.com/jsf/html"%>
    <f:loadBundle basename="com.fujimitsu.moneytransfer.resources.UIResources" var="bundle"/>
    <html>
        <f:view>
        <head>
            <title><h:outputText value="#{bundle.registerStatus}"/> </title>
             <link href="../css/stylesheet.css" rel="stylesheet" type="text/css"/>
        </head>
            <body>
                <f:verbatim><p>JavaServer Faces Page</p>
                <p>
                     </p><table border="0" cellpadding="0" cellspacing="0" width="800">
                          <tr>
                               <td>
                                    <h:graphicImage url="/images/resources.jpg" alt="#{bundle.img_alt_info}"/>
                               </td>
                          </tr>
                          <tr>
                               <td>
                                    <h:messages globalOnly="false" styleClass="validationMessage" layout="table"/>
                                    <p>
                                         <h:form id="statusManagedBeanForm">
                                              <h:panelGrid columns="3">
                                                   <h:outputText value="#{bundle['statusField.status']}"/>
                                                   <h:inputText id="status" value="#{statusManagedBean.status}"/>
                                                   <h:message for="status" styleClass="validationMessage"/>
                                                   <h:outputText value="#{bundle['statusDescField.statusDesc']}"/>
                                                   <h:inputText id="statusDesc" value="#{statusManagedBean.statusDesc}"/>
                                                   <h:message for="statusDesc" styleClass="validationMessage"/>
                                                   <h:outputText value="Created By:"/>
                                                   <h:inputText id="createdBy" binding="#{statusManagedBean.createdBy}"/>
                                                   <h:message for="createdBy" styleClass="validationMessage"/>
                                              </h:panelGrid>
                                              <h:commandButton action="#{statusManagedBean.createStatusAction}" type="submit" value="Submit"/>
                                         </h:form>
                                    </p>
                               </td>
                          </tr>
                     </table>
                </f:verbatim>
            </body>
        </f:view>
    </html>
    HTML code of status.jsp before the submit button is clicked
    ===========================================
    <form id="statusManagedBeanForm" name="statusManagedBeanForm" method="post" action="/moneytransferFaces/pages/status.jsf" enctype="application/x-www-form-urlencoded">
    <input type="hidden" name="statusManagedBeanForm" value="statusManagedBeanForm" />
    <table>
    <tbody>
    <tr>
    <td>Status</td>
    <td><input id="statusManagedBeanForm:status" type="text" name="statusManagedBeanForm:status" /></td>
    <td></td>
    </tr>
    <tr>
    <td>Status Desc</td>
    <td><input id="statusManagedBeanForm:statusDesc" type="text" name="statusManagedBeanForm:statusDesc" /></td>
    <td></td>
    </tr>
    <tr>
    <td>Created By:</td>
    <td><input id="statusManagedBeanForm:createdBy" type="text" name="statusManagedBeanForm:createdBy" /></td>
    <td></td>
    </tr>
    </tbody>
    </table>
    <input type="submit" name="statusManagedBeanForm:j_id_jsp_948632549_16" value="Submit" /><input type="hidden" name="javax.faces.ViewState" id="javax.faces.ViewState" value="j_id4:j_id5" />
    </form>
    HTML code of status.jsp after the submit button is clicked
    ==========================================   
    Please note:   action="/moneytransferFaces/pages/status.jsf"   ,  is this what it is supposed to be?
    <form id="statusManagedBeanForm" name="statusManagedBeanForm" method="post" action="/moneytransferFaces/pages/status.jsf" enctype="application/x-www-form-urlencoded">
    <input type="hidden" name="statusManagedBeanForm" value="statusManagedBeanForm" />
    <table>
    <tbody>
    <tr>
    <td>Status</td>
    <td><input id="statusManagedBeanForm:status" type="text" name="statusManagedBeanForm:status" /></td>
    <td></td>
    </tr>
    <tr>
    <td>Status Desc</td>
    <td><input id="statusManagedBeanForm:statusDesc" type="text" name="statusManagedBeanForm:statusDesc" /></td>
    <td></td>
    </tr>
    <tr>
    <td>Created By:</td>
    <td><input id="statusManagedBeanForm:createdBy" type="text" name="statusManagedBeanForm:createdBy" /></td>
    <td></td>
    </tr>
    </tbody>
    </table>
    <input type="submit" name="statusManagedBeanForm:j_id_jsp_948632549_16" value="Submit" /><input type="hidden" name="javax.faces.ViewState" id="javax.faces.ViewState" value="j_id1:j_id3" />
    </form>
    STATUS BEAN
    ===========
    package com.fujimitsu.moneytransfer.beans;
    import javax.faces.component.html.HtmlInputText;
    public class Status {
         private String status;
         private String statusDesc;
         private HtmlInputText createdBy;
         public Status() {
         public HtmlInputText getCreatedBy() {
              return createdBy;
         public void setCreatedBy(HtmlInputText createdBy) {
              this.createdBy = createdBy;
         public String getStatus() {
              return status;
         public void setStatus(String status) {
              this.status = status;
         public String getStatusDesc() {
              return statusDesc;
         public void setStatusDesc(String statusDesc) {
              this.statusDesc = statusDesc;
         public String createStatusAction() {
              this.setStatusDesc("testing createStatusAction()...");
              return "success";
    FACES CONFIG
    ============
    <?xml version="1.0" encoding="UTF-8"?>
    <!--
         Copyright 2003 Sun Microsystems, Inc. All rights reserved.
         SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
    -->
    <!DOCTYPE faces-config PUBLIC
      "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
      "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
    <faces-config>
         <application>
              <locale-config>
                   <default-locale>en</default-locale>
              </locale-config>
         </application>
         <managed-bean>
              <managed-bean-name>statusManagedBean</managed-bean-name>
              <managed-bean-class>
                   com.fujimitsu.moneytransfer.beans.Status
              </managed-bean-class>
              <managed-bean-scope>session</managed-bean-scope>
         </managed-bean>
         <navigation-rule>
              <from-view-id>/pages/status.jsf</from-view-id>
              <navigation-case>
                   <from-outcome>success</from-outcome>
                   <to-view-id>/pages/home.jsf</to-view-id>
              </navigation-case>
         </navigation-rule>
         <navigation-rule>
              <from-view-id>/pages/status.jsp</from-view-id>
              <navigation-case>
                   <from-outcome>success</from-outcome>
                   <to-view-id>/pages/home.jsp</to-view-id>
              </navigation-case>
         </navigation-rule>
         <lifecycle>
              <phase-listener>
                   com.fujimitsu.moneytransfer.utils.PrintTreePhaseListener
              </phase-listener>
         </lifecycle>
    </faces-config>
    web.xml
    ======
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE web-app PUBLIC
      "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
      "http://java.sun.com/dtd/web-app_2_3.dtd">
    <web-app>
         <!--A short name that is intended to be displayed by tools.-->
         <display-name>The simplest JSF application.</display-name>
         <servlet>
              <servlet-name>Faces Servlet</servlet-name>
              <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
         </servlet>
         <servlet-mapping>
              <servlet-name>Faces Servlet</servlet-name>
              <url-pattern>/faces/*</url-pattern>
         </servlet-mapping>
        <servlet-mapping>
              <servlet-name>Faces Servlet</servlet-name>
            <url-pattern>*.jsf</url-pattern>
        </servlet-mapping>
        <servlet-mapping>
              <servlet-name>Faces Servlet</servlet-name>
            <url-pattern>*.faces</url-pattern>
        </servlet-mapping>
    </web-app>
    DIRECTORY STRUCTURE
    ====================
    appName
                pages
                WEB-INF
                .........Thanks.

  • How to call javascript function & action method on clicking jsf  button?

    I have one jsf custom button. I am checking client side validations in mail by calling javascript function & also sending mail by calling action method of a bean which will execute at server side for onclick event of that button. Because of this when I click on that button its calling both javascript function and action method. So even though validations failed its sending mail. How can I overcome this problem?? Please help me....

    I am asking regarding commanLinks in jsf. I have the following code block in jsf. Even though mailSentMessage('true'); returns false, its calling action="#{emailObjectAction.sendEmail}" method. thats why I got that doubt. try the following code.
    <h:commandLink id="mailBtn123Send"      onclick="return mailSentMessage('true');" value="send mail"     action="#{emailObjectAction.sendEmail}">          
    </h:commandLink>

  • PageMethod response returning whole page, unable to debug the server side method

    Hello Guys,
    I am unable to debug my method written on server side when a call is send to it through jquery using page method.
    In response , I get the whole page.
    code:
    ASPX page:
    PageMethods.MyMethod(p1, p2, function(response){
    ASPX.CS
    [System.Web.Services.WebMethod()]
    [System.Web.Script.Services.ScriptMethod()]
    publicstaticstringMyMethod(stringp1,
    stringp2){
    //Updating database
    I did ScriptModule entry in web.config, enabled tracing,have ScriptManager and EnablePageMethods is set to true.
    Still the server side method is not getting called.
    please help.
    Ng_TechFreak

    Hi Ng_TechFreak,
    For ASP.NET questions please post in
    ASP.NET forum where you'll get better help.
    Thanks for your understanding.
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • Calling the super class method from the subclass

    Hi all,
    I have a question about inheritence and redefinition of methods. Is it possible to call the superclass implementation of a method which is redefined in the subclass in another method of the subclass?There are possbilities like creation of an explicit super class instance or delegating the super class method implementation to another method which is also protected etc. What i mean is, is there a direct way of calling it?We have ,me,   as the reference for the instance we have(which is the subclass instance in this case), is there also a way of pointing the superclass implementation(with super we can reference in the subclass redefinition, my question is if we have such a parameter in other methods of the subclass too)
    Thanks in advance
    Sukru

    Hi,
    The super reference can only be used in redefined methods to call superclass implementation . So probably what you can do is use upcasting and access the required superclass implementation. I can think of only this way...;-)
    Ex data lr_super type ref to cl_superclass
    lr_super = lr_subclass.
    lr_super->method().
    ~Piyush Patil

  • Problem : when calling the findbyPrimaryKey(id) method

    when I call the create() method and insert into the database it works fine but when i call the findByPrimaryKey() method it doesnt return anything and gives the following error.
    Cannot find principal mapping information for data source with JNDI name jdbc/Cloudscape
    Sinet

    read this one:
    http://developer.java.sun.com/developer/onlineTraining/J2EE/Intro/jdbc.html
    Almost at the bottom you wil see your error message explained.

  • Two Incidents created when calling the AppsLogger createIncident method

    when trying to create the Incident using the below method AppsIncidentInfo createIncident(Object pThis, String pAppShortName, String pMessageName, Map<String, Object> pMap, Throwable pException) of class AppsLogger.java (Line No:745 /jdeveloper/jdev/oaext/oracle.apps.fnd.applcore-src.zip!/oracle/apps/fnd/applcore/log/AppsLogServiceImpl.java),
    it is creating two incidents with same Error Message. But it is suppose to create only one Incident
    when debug this above method it is calling the AppsIncidentInfo write(Object pThis, MessageVORow pMessage, Map<String, Object> pMap, Throwable pException) method iof class AppsLogServiceImpl.java
    ( /jdeveloper/jdev/oaext/oracle.apps.fnd.applcore-src.zip!/oracle/apps/fnd/applcore/log/AppsLogServiceImpl.java). In Line No 377 of class AppsLogServiceImpl.java it is creating the incident. And again in Line No 1542 of class AppsLogServiceImpl.java also it is creating Incident.
    Could anyone please suggest whether this is the expected behavior or do we need to restrict the second Incident creation in Line No 1542 of class AppsLogServiceImpl.java with condition
    if (_checkIncidentMarkerExists(pMessage) == false).
    Edited by: 902796 on Feb 2, 2012 4:26 AM

    You are sure you are in the right forum?
    Looks like OA {forum:id=210}
    Timo

  • Explicitly call the Event Handler method

    Hello Friends,
    Is it possible to explicitly call the eventhandler method `? or dynamically fire/invoke the event so that particular eventhandler method should be called ?
    Regards,

    You should call eventhandler as follows
    DATA lr_event TYPE REF TO cl_wd_custom_event.
    **Create event object
      CREATE OBJECT lr_event
        EXPORTING
          name = 'ON_SELECT'. " give your event name which appears in wdevent in your handler method
    * Call eventhandler
      wd_this->onactionsel_rdb(
      wdevent = lr_event                          " ref to cl_wd_custom_event

  • Need to Call the Parent Class Method

    Hi..
    Please go thru the following code.
    class Parent {
         Parent() {
              System.out.println("In Parent Constructor");
         void set() {
              System.out.println("In Parent set method");
    class Child extends Parent {
         Child() {
              System.out.println("In Child Constructor");
         void set() {
              super.set();
              System.out.println("In Child set method");
    class SetTrial {
         public static void main(String args[])
              Child aChild = new Child();
              Parent theImpl = (Parent)aChild;
              theImpl.set();
    I want to know, is there any way by which we can get the Parent Set method to be executed, when we invoke it in main.
    In the main, I should be able to decide which Set to invoke based on certain conditions.
    TIA..
    Basu.

    Since you seem to have an aversion to using the child class decide whether to call just the parent's set function, I think I would do it like this:
    class Parent{
      Parent() {
         System.out.println("In Parent Constructor\n");
      void set(ConditionClass C) {
        System.out.println ("In Parent set method\n");
    class Child extends Parent {
      Child() {
        System.out.println("In Child Constructor");
      void set(ConditionClass C) {
        super.set();
        if (C.CallChildSet()) {
          System.out.println("In Child set method");
    class SetTrial {
         public static void main(String args[])
              Child aChild = new Child();
              Parent theImpl = (Parent)aChild;
                    ConditionClass C = new ConditionClass()
              theImpl.set(C);
    }In any case I would decide in the child's set to call the parent's set or not.

Maybe you are looking for

  • Trying to Customize a view object relating to an LOV

    I am trying to customize an LOV that references View Object FlexDynamicLovVo. The about page shows       /oracle/apps/fnd/framework/webui/OAFlexLOVRG 120.6. The controller is OAFlexDynamicLovCO and the application module is     OAFlexDynamicLovAM. I

  • How to load bios screen at startup?

    I'm trying to access the bios screen at startup. This computer has the Mac side and a Windows PC side. I want to open the bios screen in the Windows PC side (if this makes a difference) so that I can change the booting options. Can someone please hel

  • High Rollback Per Cent in SAP

    I have been reviewing Oracle Statspack reports generated in our SAP R/3 database and one of the statistics that jumped out at me is a very high Rollback per Transaction percent of over 45%.  I support other non-SAP Oracle databases and have never see

  • I tried to email to my printer, but no print, even though I received ehpprinter's msg.

    1. HP Photosmart Premium C310 2. Windows Vista Ultimate 3. No mesage 4. no changes 5. Couldn't find the solution in HP Support Assistant

  • How do I keep the date/time when exporting photos?

    When exporting photos from Photos.app on my Mac, it doesn't use the metadata that it displays in Photos--it uses the current date/time. So when I export a photo from 2010, it says it's dated 2015 when I import it into Aperture. Is there a way to expo