How to handle value change events of select list in custom component?

My HelloUIComp code...How to handle events for "Select"...if i choose option1 from select then one text box is to be displayed in custom component and if i choose another option then some other text box is to be displayed in custom components...
public class HelloUIComp extends UIComponentBase {
    public static final String account="custom.account";
    public static final String RENDERER_TYPE = null;
    HtmlCommandButton button = createButton();
    //HtmlSelectOneMenu select=createSelect();
    public void processDecodes(FacesContext context) {
         Calling the lifecycle method "processDecodes" on the
         internal button is absolutely critical to create action events
         button.processDecodes(context);
         super.processDecodes(context);
    private HtmlCommandButton createButton() {
         FacesContext context = FacesContext.getCurrentInstance();
         HtmlCommandButton newButton = new HtmlCommandButton();
         newButton.setId("Add");
         newButton.setValue("Add");
         newButton.setType("submit");
         //newButton.setOnclick("return func_1(this,event);");
         MethodBinding binding = context.getApplication().createMethodBinding("#{pc_MyProjectView.go}", null);
         newButton.setAction(binding);
              newButton.setParent(this);
         return newButton;
  /*  private HtmlSelectOneMenu createSelect()
         HtmlSelectOneMenu selectCategory=createSelect();
         return selectCategory;
     public void encodeBegin(FacesContext context) throws IOException {
          String style = (String)getAttributes().get("style");
          String startdate = (String)getAttributes().get("startdate");
          String enddate = (String)getAttributes().get("enddate");
          //String add=(String)getAttributes().get("add");
          ResponseWriter writer = context.getResponseWriter();
         writer.startElement("table", this);
        writer.writeAttribute("border","2","2");
        writer.startElement("tbody", this);
        writer.startElement("tr", this);
        writer.startElement("td", this);
        writer.writeText("Account Category", null);
        writer.endElement("td");
          writer.startElement("td", this);
          writer.writeText("Reg-No", null);
          writer.endElement("td");
          writer.startElement("td", this);
        writer.writeText("Account-No", null);
          writer.endElement("td");
          writer.startElement("td", this);
        writer.writeText("", null);
          writer.endElement("td");
          writer.startElement("td", this);
        writer.writeText("Start-Date", null);
          writer.endElement("td");
          writer.startElement("td", this);
        writer.writeText("End-Date", null);
          writer.endElement("td");
          writer.endElement("tr");
          writer.startElement("tr",this);          
          writer.startElement("td", this);
          writer.startElement("select", this);
        if (style!=null)
               writer.writeAttribute("style", style, null);
        writer.writeAttribute("name","category","category");
        writer.startElement("option", this);
          writer.writeText("Select", null);
          writer.endElement("option");
          //to access data
          Account accountObj;
          AccountData accountDataobj;
          List listOfAccounts;
          int noOfAccounts;
          accountDataobj=new AccountData();
          listOfAccounts=accountDataobj.getAccounts();
          noOfAccounts=listOfAccounts.size();
          for(int i=0;i<noOfAccounts;i++)
          writer.startElement("option", this);     
          accountObj=(Account) listOfAccounts.get(i);
          writer.writeText(accountObj.getCategory(), null);
          writer.endElement("option");
          //System.out.println(accountObj.getRegNo());
          //System.out.println(accountObj.getAccountNo());
          writer.endElement("select");
          writer.endElement("td");
        writer.startElement("td", this);
          writer.startElement("select", this);
          if (style!=null)
               writer.writeAttribute("style", style, null);
          writer.writeAttribute("name","regno","regno");
          writer.startElement("option", this);
          writer.writeText("Select", null);
          writer.endElement("option");
          for(int i=0;i<noOfAccounts;i++)
          accountObj=(Account) listOfAccounts.get(i);     
          writer.startElement("option", this);
          writer.writeText(""+accountObj.getRegNo(), null);
          writer.endElement("option");
          writer.endElement("select");
          writer.endElement("td");
          writer.startElement("td", this);
          writer.startElement("select", this);
          if (style!=null)
               writer.writeAttribute("style", style, null);
          writer.writeAttribute("name","accno","accno");
          writer.startElement("option", this);
          writer.writeText("Select", null);
          writer.endElement("option");
          for(int i=0;i<noOfAccounts;i++)
          accountObj=(Account) listOfAccounts.get(i);
          writer.startElement("option", this);
          writer.writeText(accountObj.getAccountNo(), null);
          writer.endElement("option");
          //writer.startElement("option", this);
          //writer.writeText("00200155", null);
          //writer.endElement("option");
          writer.endElement("select");
          writer.endElement("td");
          writer.startElement("td", this);
          button.encodeBegin(context);
         button.encodeChildren(context);
         button.encodeEnd(context);
        writer.endElement("td");
          writer.startElement("td", this);
          writer.startElement("input", this);
          if (style!=null)
               writer.writeAttribute("style", style, null);
          writer.writeAttribute("type","text","text");
          writer.writeAttribute("name","startdate","startdate");
          writer.writeAttribute("value",startdate,startdate);
          writer.writeAttribute("readonly", "","");
          //writer.endElement("input");
          writer.endElement("td");
          writer.startElement("td", this);
          writer.startElement("input", this);
          if (style!=null)
               writer.writeAttribute("style", style, null);
          writer.writeAttribute("type","text","text");
          writer.writeAttribute("name","enddate","enddate");
          writer.writeAttribute("value",enddate,enddate);
          writer.writeAttribute("readonly", "","");
          writer.endElement("td");
          writer.endElement("tr");
          writer.endElement("tbody");
          writer.endElement("table");
     public String getFamily() {
          return "HelloFamily";
     }

NewEclipseCoder wrote:
How to handle events for "Select"...if i choose option1 from select then one text box is to be displayed in custom component and if i choose another option then some other text box is to be displayed in custom components...Two ways:
1) submit the form to the server and render the desired textbox depending on the option.
or
2) render all textboxes and use Javascript/DOM to display/hide them depending on the option.

Similar Messages

  • How to handle Text  change event in text box in SAP B1

    Hello Expert...
    How to handle Text  change event in source.
    Please define the Event when i change the text in textbox..
    currently i am using the Lost focus event but it is only occur when tab focus lost from that text box.
    So please required solution ASAP..
    Regards,
    Abhinav Lalpurwala
    Edited by: Abhinav Lalpurwala on Aug 5, 2011 3:19 PM

    Hi,
    Catch the et_VALIDATE event, when InnerEvent = False and ItemChanged = True.
                If pVal.EventType = BoEventTypes.et_VALIDATE Then
                    If pVal.InnerEvent = False And pVal.ItemChanged Then
                        'TODO Your code here...
                    End If
                End If
    Regards,
    Vítor Vieira

  • How to handle tab change event in UI shell main area

    Hi,
    I have two tabs(two taskflows) in UI shell main area. one is department tab and another is employee tab. My department tab shows employees department wise. On employee tab I have emplyee table which shows employees jobwise. This employee table has the functionality of adding new record to employee vo as well.
    Now i follow these steps.
    1. by defualt department tab is open.
    2. by clickinng on Tasks menu link i open Employee tab in to main area. Now i have both tabs in main area.
    3. at Employee tab I search all employees job = accountant. It shows the search result well.
    4. Now i add a new record to it and without saving/deleting this record i move to department tab.
    5. at Department tab i search employees where department =20, here no relation b/w job and department.
    6. Now i return to employee tab. my newly added record got disappeared. It is there but does not show in table.
    How to resolve it??
    I have one solution in my mind while changing the tab i can prompt to user "you can not leave the newly added record..either save it or delete it". But how to catch tab change event here? where i can write code to prompt msg to user?
    Pls help.
    Edited by: 900997 on May 6, 2012 4:10 AM

    With apologies for the slow reply, I'm currently travelling.
    Two things to note:
    1) The af:document uncommittedDataWarning flag was designed to stop users navigating away from half entered records. More about this flag can be found here:
    http://docs.oracle.com/cd/E23943_01/web.1111/b31973/af_orgpage.htm#CACDDDFH (see point 4)
    http://www.oracle.com/technetwork/developer-tools/adf/unsaveddatawarning-096556.html
    ....please note our documentation from time to time spells this flag wrong with only one "t" in the word committed, so if you're attempting a bulk search check for this (and I'll raise document bugs to get this fixed in the future).
    2) On addressing the ADF UI Shell, if you're switching between "pages" in the UI Shell, as separate to switching between dynamic tabs within a single page using the UI Shell, the UI Shell will actually restart the currently running task flow in the page you're returning too. You can verify this by implementing an initializer on your task flow with a log message, and watching when the initializer is called.
    In addressing your last question, at this stage I think you need to assess my first answer then come back if you think you sill need to execute the code on the tab click. I also need to know are you talking about the primary level of tabs that represent each page in the UI Shell, or are you referring to the dynamic tabs within a single UI Shell page that hold your task flows?
    CM.

  • LV7: how to catch 'Value change' event for cursor position in XY graph?

    I try to catch an event when the cursor position of a graph's cursor
    changes. I created a reference for the cursor array and registered a dynamic
    event 'Value change' for it. The event does not fire when the cursor changes
    (either by dragging it with the mouse or by direct entry of a new value in
    the cursor's X or Y fields. In contrast, when I register e.g. the 'Mouse Up'
    event for the cursor array, the event IS detected.
    -Franz

    So this is the same behaviour as that of a regular control which also does
    not fire a 'Value changed' event when it gets updated by e.g. writing to a
    local.
    At least the cursor's behavior is consistent then...
    But unfortunately also the direct user interaction with the cursor's numeric
    field does not fire the event, which is NOT consistent.
    I was trying to catch cursor changes in my event loop and had used a 'Mouse
    Up' event of the graph indicator to look for cursor changes (whose last
    position I had kept in a local or shift reg). In order not to miss a direct
    user interaction in the numeric field I added the dynamic event 'Value
    change' to the same event case, but with no success, it missed the direct
    entry ...
    according to what you say this seems to b
    e a bug then...
    -Franz
    "Greg McKaskle" schrieb im Newsbeitrag
    news:[email protected]..
    > > I try to catch an event when the cursor position of a graph's cursor
    > > changes. I created a reference for the cursor array and registered a
    dynamic
    > > event 'Value change' for it. The event does not fire when the cursor
    changes
    > > (either by dragging it with the mouse or by direct entry of a new value
    in
    > > the cursor's X or Y fields. In contrast, when I register e.g. the 'Mouse
    Up'
    > > event for the cursor array, the event IS detected.
    > >
    >
    > The reason is that value change events fire when user action directly on
    > the control changes its value. They do not fire when other programmatic
    > value changes occur. If you are looking at a value change on the cursor
    > palette, user interaction with the numeric should fire it, but updates
    > due to cursor movement are more like programmatic updates.
    >
    > Additional events will likely be added in future
    releases, and these may
    > make it easier to catch cursor movement events on a graph.
    >
    > Greg McKaskle
    >

  • How to trigger value change in event structure

    Hii everyone, as the title, how should I trigger the value change event to pop up a message.. below is my connection..
    I want to trigger the event structure to pop up the sub-vi, when the flame and led are TRUE state... I using property node but still the event structure not able to execute.. How should I connect? Thank you very much...
    Solved!
    Go to Solution.

    There are several ways you can do it. First you have to configure your sub-vi so that it does whatever you want when it runs  (in the vi properties, top most window for example) and to make sure that it closes completely when finished (when clicking the "OK" button for example).
    You than need to make an asynchronous call to the sub-vi. There are several ways to do it. My favorite one is shown below. You go in the "Application control" sub-palette and select Static VI reference. I like this approach because it keeps track of the sub-vi path for you, as long as the sub-vi is in the same project. You then drag the sub-vi onto the empty square that will changes to your sub-vi icon. You then connect to an invoke node from the same sub-palette and select run VI. Set "Wait Until Done" to false and the main VI will keep running after starting the Sub vi. Set "Auto Dispose Ref" is the easiest way to go. Otherwise you have to keep track of the sub-vi reference and close it yourself when you're done.
    Marc Dubois
    HaroTek LLC
    www.harotek.com

  • Set Radio Group Default Value Based on a Select List Change Event

    Apex 4.2
    I have a radio group that is source is below. It returns 3 radio group item All,Miv,Courier
    SELECT type d, code r FROM vw_lov_depot
      WHERE svc_name = :P320_DEPOT
      ORDER BY 1
    The radio group is only populated when :P320_DEPOT gets a value, this is a select list.
    I am trying to set the radio group to  default to this value Miv it would use the statement
    SELECT type d, code r FROM vw_lov_depot
      WHERE svc_name = :P320_DEPOT
      and type ='Miv'
      ORDER BY 1
    I have tried creating a dynamic action on Select list change to populate the default value of the radio group...no joy I also tried a computation. how can I set this default value on when list changed.
    Thanks
    I have got the default Radio Group Selection working by doing a computation before region on the radio group and calling its select statement and setting the value. But the problem is now I cannot change the radtio group as I do it fire the before region trigger and sets it back to the default value....any help?

    Hi,
    Could you please create example to apex.oracle.com?
    Regards,
    Jari

  • How to tackle the dataflow problem when Value Change event always triggers after another GUI event

    We know that Value change event always triggers after another GUI event. Eg, the user modifies string control, the user clicks on a boolean control. Then event boolean clicked is triggered before event string control value change.
    Now suppose somehow the GUI event that must happen to subsequently trigger the Value change event can potentially affect the data that Value change event is supposed to work on. How can we tackle this problem ?
    For example, in a mockup application that the grand purpose is to have user entered values in a textbox logged to a file (no missing information is accepted, and there is a boolean to determine how the information is logged).
    There are 2 controls, boolean A when clicked (mouse down) will load random number in text box B. Text box B is designed with event structure VALUE change which saves whatever values user enters into text box B to a log file.
    There are 3 problems when instead of clicking anywhere on the front panel after modifying text box B, the user ends up clicking on boolean control A.
    1. Event mouse down on Boolean control A will execute first, modifying text box B content before the user entered values in B get saved.
    2. The value of boolean A can potentially affect how textbox B is loggged.
    3. The value of boolean A affects how the file is logged and this is indeterminate. Somehow when running this VI with no Highlighting, the textbox B Value change event executes -before- boolean A value is updated (F to T). When running this VI with Highlighting, the boolean A value is updated (F to T) (because we click on it) -before- textbox B value change event occurs. Why is it like this ?
    Now the situation I made up seems non-sense, but I believe it resembles one way or another a problem that you might run into. How would you solve this problem elegantly ?
     

    You can set the string control to "update while typing".
    Are you sure appending the log to itself is reasonable? Wouldn't it grow without bounds if the users keeps entering strings or pressing the ingore button?
    Why isn't the "constant" a diagram constant instead of a control. Is the user allowed to change it?
    To reset just write empty strings or a false to local variables of the controls (renit to defaults" seems a bit heavy handed).
    All you probably need is a single event case for "ignore:value change" and "String" value changed", no need for the local variable..
    Also add a stop button and an event for it.
    You don't need the timeout event.
     

  • LOV value change event is getting triggered automatically

    Hi,
    I'm using ADF Faces with EJB. I have a page with a LOV defined as:
    <af:selectInputText binding="#{backing_contactUpdate.investorLOV}"
              id="investorLOV" columns="30"
              searchDesc="Search and Select Investor"
              value="#{updateContact.reference_id_meaning}"
              action="dialog:chooseInvestor"
              windowHeight="600" windowWidth="650"
              returnListener="#{backing_contactUpdate.investorLovReturn_action}"
              valueChangeListener="#{backing_contactUpdate.investorLovChange_action}"
              autoSubmit="true"/>
    When this page is run the first time and no value exists in the managed bean property bound to LOV field (updateContact.reference_id_meaning) then it all works fine. But if the managed bean property has any value then clicking any button which submits data triggers the LOV change event (backing_contactUpdate.investorLovChange_action). Once a new value is selected in the LOV then the event doesn't get triggered. How can I make the state of LOV field as validated, so that the change event doesn't get fired?

    Additional Information:
    The backing bean and managed bean both are at request scope.
    Another problem I'm facing is that the value change event is not fired when the value in the LOV field is deleted (set to blank).
    The method in backing bean is:
    public void investorLovChange_action(ValueChangeEvent valueChangeEvent) {
    // Add event code here...
    String investorName = (String)valueChangeEvent.getNewValue();
    if (investorName == null) {
    getReferenceId().setSubmittedValue(null);
    getReferenceId().setValue(null);
    } else {
    ValueBinding investorBeanBind =
    application.createValueBinding("#{irmInvestorBean}");
    IrmInvestorBean investorBean =
    (IrmInvestorBean)investorBeanBind.getValue(facesContext);
    investorBean.fetchInvestors(investorName, null, null);
    IrmInvestorSearchResults[] investors = investorBean.getInvestors();
    if ((investors != null) && (investors.length == 1)) {
    getReferenceId().setSubmittedValue(null);
    getReferenceId().setValue(investors[0].getInvestor_id());
    getInvestorLOV().setSubmittedValue(null);
    getInvestorLOV().setValue(investors[0].getFull_name());
    } else {
    UIViewRoot investorLovRoot =
    application.getViewHandler().createView(facesContext,
    "/investorLOV.jsp");
    HashMap windowProp = new HashMap();
    windowProp.put("height", "600");
    windowProp.put("width", "650");
    adfFacesContext.launchDialog(investorLovRoot, null,
    valueChangeEvent.getComponent(),
    true, windowProp);
    }

  • Need help going to error page from jsf component value change event

    Afternoon all,
    I have a jsp page which uses jsf components and when one of the jsf combo boxes components handles an value change event, the method 'handleTestComboValueChange' is fired.
    Within this method if an error is caught I would like to display an error page instead of the currently displayed page.
    Can some one tell me how to do this. I tried to use getFacesContext().getExternalContext().redirect("errorpage.jsp"); but I just got an illegalStackException error.
    Any help would be great.
    Thanks in advance,
    Lex

    log output listed below...
    [14/04/06 14:52:48:781 BST] 6b0ec4d8 ProcessValida E com.sun.faces.lifecycle.ProcessValidationsPhase com.sp.exceptions.ServicePackagesException: My custom error message
    [14/04/06 14:52:48:812 BST] 6b0ec4d8 ProcessValida E com.sun.faces.lifecycle.ProcessValidationsPhase TRAS0014I: The following exception was logged javax.faces.el.EvaluationException: com.sp.exceptions.ServicePackagesException: My custom error message
         at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:130)
         at javax.faces.component.UIInput.broadcast(UIInput.java:492)
         at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:252)
         at javax.faces.component.UIViewRoot.processValidators(UIViewRoot.java:346)
         at com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:78)
         at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
         at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:90)
         at com.ibm.faces.webapp.FacesGenericPortlet.execute(FacesGenericPortlet.java:637)
         at com.ibm.faces.webapp.FacesGenericPortlet.processAction(FacesGenericPortlet.java:142)
         at com.scottishpower.portlet.GoldenAccountPortlet.processAction(GoldenAccountPortlet.java:143)
         at com.ibm.wps.pe.pc.std.cmpf.impl.PortletFilterChainImpl.processAction(PortletFilterChainImpl.java:104)
         at com.ibm.wps.propertybroker.standard.filter.PropertyBrokerActionFilter.processAction(PropertyBrokerActionFilter.java:260)
         at com.ibm.wps.pe.pc.std.cmpf.impl.PortletFilterChainImpl.processAction(PortletFilterChainImpl.java:95)
         at com.ibm.wps.pe.pc.std.invoker.impl.PortletServlet.dispatch(PortletServlet.java:148)
         at com.ibm.wps.pe.pc.std.invoker.impl.PortletServlet.doPost(PortletServlet.java:76)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at com.ibm.wps.pe.pc.std.cache.CacheablePortlet.service(CacheablePortlet.java:257)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictServletInstance.java:110)
         at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLifecycleServlet.java:174)
         at com.ibm.ws.webcontainer.servlet.IdleServletState.service(StrictLifecycleServlet.java:313)
         at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLifecycleServlet.java:116)
         at com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance.java:283)
         at com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(ValidServletReferenceState.java:42)
         at com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(ServletInstanceReference.java:40)
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebAppRequestDispatcher.java:1095)
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java(Compiled Code))
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.include(WebAppRequestDispatcher.java:254)
         at com.ibm.wps.pe.pc.std.invoker.impl.PortletInvokerImpl.invoke(PortletInvokerImpl.java:204)
         at com.ibm.wps.pe.pc.std.invoker.impl.PortletInvokerImpl.invoke(PortletInvokerImpl.java:168)
         at com.ibm.wps.pe.pc.std.invoker.impl.PortletInvokerImpl.action(PortletInvokerImpl.java:82)
         at com.ibm.wps.pe.pc.std.event.ActionEvent.execute(ActionEvent.java:111)
         at com.ibm.wps.pe.pc.std.event.EventQueueManager.processEventLoop(EventQueueManager.java:86)
         at com.ibm.wps.pe.pc.std.PortletContainerImpl.performEvents(PortletContainerImpl.java:168)
         at com.ibm.wps.pe.pc.PortletContainerImpl.performEvents(PortletContainerImpl.java:229)
         at com.ibm.wps.engine.phases.WPActionPhase.processPortlets(WPActionPhase.java:947)
         at com.ibm.wps.engine.phases.WPActionPhase.execute(WPActionPhase.java:489)
         at com.ibm.wps.state.phases.AbstractActionPhase.next(AbstractActionPhase.java:130)
         at com.ibm.wps.engine.Servlet.callPortal(Servlet.java:710)
         at com.ibm.wps.engine.Servlet.doGet(Servlet.java:562)
         at com.ibm.wps.engine.Servlet.doPost(Servlet.java:736)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictServletInstance.java:110)
         at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLifecycleServlet.java:174)
         at com.ibm.ws.webcontainer.servlet.IdleServletState.service(StrictLifecycleServlet.java:313)
         at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLifecycleServlet.java:116)
         at com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance.java:283)
         at com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(ValidServletReferenceState.java:42)
         at com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(ServletInstanceReference.java:40)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:76)
         at com.ibm.wps.state.filter.StateCleanup.doFilter(StateCleanup.java:86)
         at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
         at com.ibm.wps.mappingurl.impl.URLAnalyzer.doFilter(URLAnalyzer.java:258)
         at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebAppRequestDispatcher.java:1086)
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java(Compiled Code))
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:201)
         at com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward(WebAppInvoker.java:125)
         at com.ibm.ws.webcontainer.srt.WebAppInvoker.handleInvocationHook(WebAppInvoker.java:286)
         at com.ibm.ws.webcontainer.cache.invocation.CachedInvocation.handleInvocation(CachedInvocation.java:71)
         at com.ibm.ws.webcontainer.srp.ServletRequestProcessor.dispatchByURI(ServletRequestProcessor.java:182)
         at com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(OSEListener.java:334)
         at com.ibm.ws.webcontainer.http.HttpConnection.handleRequest(HttpConnection.java:56)
         at com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java:652)
         at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:448)
         at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java(Compiled Code))
    Caused by: com.sp.exceptions.ServicePackagesException: My custom error message
         at pagecode.fragments.GSolus.getTariffsByRef(GSolus.java:297)
         at pagecode.fragments.GSolus.handleServicePackageComboValueChange(GSolus.java:214)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java(Compiled Code))
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java(Compiled Code))
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java(Compiled Code))
         at java.lang.reflect.Method.invoke(Method.java(Compiled Code))
         at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:126)
         ... 68 more
    javax.faces.el.EvaluationException: com.sp.exceptions.ServicePackagesException: My custome error message
         at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:130)
         at javax.faces.component.UIInput.broadcast(UIInput.java:492)
         at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:252)
         at javax.faces.component.UIViewRoot.processValidators(UIViewRoot.java:346)
         at com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:78)
         at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
         at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:90)
         at com.ibm.faces.webapp.FacesGenericPortlet.execute(FacesGenericPortlet.java:637)
         at com.ibm.faces.webapp.FacesGenericPortlet.processAction(FacesGenericPortlet.java:142)
         at com.sp.portlet.GoldenAccountPortlet.processAction(GoldenAccountPortlet.java:143)
         at com.ibm.wps.pe.pc.std.cmpf.impl.PortletFilterChainImpl.processAction(PortletFilterChainImpl.java:104)
         at com.ibm.wps.propertybroker.standard.filter.PropertyBrokerActionFilter.processAction(PropertyBrokerActionFilter.java:260)
         at com.ibm.wps.pe.pc.std.cmpf.impl.PortletFilterChainImpl.processAction(PortletFilterChainImpl.java:95)
         at com.ibm.wps.pe.pc.std.invoker.impl.PortletServlet.dispatch(PortletServlet.java:148)
         at com.ibm.wps.pe.pc.std.invoker.impl.PortletServlet.doPost(PortletServlet.java:76)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at com.ibm.wps.pe.pc.std.cache.CacheablePortlet.service(CacheablePortlet.java:257)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictServletInstance.java:110)
         at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLifecycleServlet.java:174)
         at com.ibm.ws.webcontainer.servlet.IdleServletState.service(StrictLifecycleServlet.java:313)
         at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLifecycleServlet.java:116)
         at com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance.java:283)
         at com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(ValidServletReferenceState.java:42)
         at com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(ServletInstanceReference.java:40)
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebAppRequestDispatcher.java:1095)
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java(Compiled Code))
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.include(WebAppRequestDispatcher.java:254)
         at com.ibm.wps.pe.pc.std.invoker.impl.PortletInvokerImpl.invoke(PortletInvokerImpl.java:204)
         at com.ibm.wps.pe.pc.std.invoker.impl.PortletInvokerImpl.invoke(PortletInvokerImpl.java:168)
         at com.ibm.wps.pe.pc.std.invoker.impl.PortletInvokerImpl.action(PortletInvokerImpl.java:82)
         at com.ibm.wps.pe.pc.std.event.ActionEvent.execute(ActionEvent.java:111)
         at com.ibm.wps.pe.pc.std.event.EventQueueManager.processEventLoop(EventQueueManager.java:86)
         at com.ibm.wps.pe.pc.std.PortletContainerImpl.performEvents(PortletContainerImpl.java:168)
         at com.ibm.wps.pe.pc.PortletContainerImpl.performEvents(PortletContainerImpl.java:229)
         at com.ibm.wps.engine.phases.WPActionPhase.processPortlets(WPActionPhase.java:947)
         at com.ibm.wps.engine.phases.WPActionPhase.execute(WPActionPhase.java:489)
         at com.ibm.wps.state.phases.AbstractActionPhase.next(AbstractActionPhase.java:130)
         at com.ibm.wps.engine.Servlet.callPortal(Servlet.java:710)
         at com.ibm.wps.engine.Servlet.doGet(Servlet.java:562)
         at com.ibm.wps.engine.Servlet.doPost(Servlet.java:736)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictServletInstance.java:110)
         at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLifecycleServlet.java:174)
         at com.ibm.ws.webcontainer.servlet.IdleServletState.service(StrictLifecycleServlet.java:313)
         at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLifecycleServlet.java:116)
         at com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance.java:283)
         at com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(ValidServletReferenceState.java:42)
         at com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(ServletInstanceReference.java:40)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:76)
         at com.ibm.wps.state.filter.StateCleanup.doFilter(StateCleanup.java:86)
         at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
         at com.ibm.wps.mappingurl.impl.URLAnalyzer.doFilter(URLAnalyzer.java:258)
         at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebAppRequestDispatcher.java:1086)
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java(Compiled Code))
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:201)
         at com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward(WebAppInvoker.java:125)
         at com.ibm.ws.webcontainer.srt.WebAppInvoker.handleInvocationHook(WebAppInvoker.java:286)
         at com.ibm.ws.webcontainer.cache.invocation.CachedInvocation.handleInvocation(CachedInvocation.java:71)
         at com.ibm.ws.webcontainer.srp.ServletRequestProcessor.dispatchByURI(ServletRequestProcessor.java:182)
         at com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(OSEListener.java:334)
         at com.ibm.ws.webcontainer.http.HttpConnection.handleRequest(HttpConnection.java:56)
         at com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java:652)
         at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:448)
         at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java(Compiled Code))
    Caused by: com.sp.exceptions.ServicePackagesException: My custome error message
         at pagecode.fragments.GSolus.getTariffsByRef(GSolus.java:297)
         at pagecode.fragments.GSolus.handleServicePackageComboValueChange(GSolus.java:214)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java(Compiled Code))
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java(Compiled Code))
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java(Compiled Code))
         at java.lang.reflect.Method.invoke(Method.java(Compiled Code))
         at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:126)
         ... 68 more

  • Help with value change events

    I need to be able to use the value change event to handle sorting and control the properties of a multicolumn listbox. I have a slow loop that runs every 10 seconds and acquires new data if it's available. New data is appended directly to the list box. The event structure handles two events. One to change colors of the text when new data is added and another to sort the contents when a user clicks on the column header. The first event seems to work just fine. It only runs when new data is added. The second event is the problem. It runs every time the loop runs and ties up the user interface so that it does not respond.
    What am I doing wrong??
    By the way, it seems that whatever I am doing wrong crashes LabVIEW while I am
    editing the vi. Probably during a partial compile. LabVIEW crashed twice while I was creating this test vi and I don't normally have trouble with LabVIEW crashing. It has crashed in both the transact.cpp and panel.cpp.
    Thanks for any help or guidance you can offer.
    Attachments:
    Event_Handling_Test.vi ‏242 KB

    I have made a few quick modifications, see attached.
    -- The lower loop should probably be a plain loop, since the timing is done by the event structure.
    -- You cannot use a shift register in the upper loop if you want the acquired list to remain sorted.
    Sorry, I am on vacation in the middle of nowhere and only spend a few minutes on this. There are many improvements possible.
    LabVIEW Champion . Do more with less code and in less time .
    Attachments:
    Event_Handling_TestMOD.vi ‏200 KB

  • Drop Down Lists and Value Change Events

    I have 4 drop down lists each with a set of values from the database.
    Based on the value of the first list(ValueChangeEvent only for list1) , I fetch data from the database and set the 'selected value' in the other lists.
    I have a Submit button which takes values from these 4 lists and puts it in the database.
    Problem:
    I change list 2 through list 4 and hit a Submit button which inserts all the values in the database.
    However,on Clicking the Submit button I never get the new selected values, it always refers to the previously fetched values.
    I tried to recreate this case in a Sandbox without a database , Here is the code:
    Page1.jsp
    <h:selectOneMenu id="list1" value="#{SessionBean1.selectedList1}" valueChangeListener="#{SessionBean1.list1ValueChangeListener}"  onchange="this.form.submit();" >
                   <f:selectItems id="dropdown1SelectItems" value="#{SessionBean1.list1}"/>
    </h:selectOneMenu>
      <h:selectOneMenu id="list2" value="#{SessionBean1.selectedList2}" >                           
                  <f:selectItems id="dropdown2SelectItems" value="#{SessionBean1.list2}"/>
       </h:selectOneMenu>
       <h:commandButton id="add" actionListener="#{SessionBean1.addActionListener}" value="Add"/>
        <h:inputText id="result" value="#{SessionBean1.result}" />SessionBean1
       public SessionBean1() {
            list1.add(new SelectItem("0","0"));
            list1.add(new SelectItem("1","1"));
            list1.add(new SelectItem("2","2"));
            list1.add(new SelectItem("3","3"));
            list2.add(new SelectItem("a","a"));
            list2.add(new SelectItem("b","b"));
            list2.add(new SelectItem("c","c"));
            list2.add(new SelectItem("d","d"));
            map.put("0", "a");
            map.put("1", "b");
            map.put("2", "c");
            map.put("3", "d");
        private void fetch_data(String value){
             selectedList2=map.get(value);
        public void list1ValueChangeListener(ValueChangeEvent vce){
                fetch_data(vce.getNewValue().toString());
        public void addActionListener(ActionEvent event){
            result=selectedList2;
        }I tried debugging and found that after the Value Change Event is fired only selectedList1 gets a new value during Update Model Values Phase and selectedList2 still has the old value.
    With this sand box project I cannot even get the second list to show the corresponding value.
    Any insight on this would be helpful

    Thank You Balus C,
    I just realized the reason why this is not working, I found the reason in your article Populating Child Menu's article, I am just
    putting it as a reference here.
    One concern is that the skipping of the UPDATE_MODEL_VALUES will also cause that the new values of the menu's which have immediate="true" set won't be set in the backing bean. This can partly be fixed by getting the new value from the ValueChangeEvent inside the valueChangeListener method and assign it to the appropriate property. But this won't work for other menu's of which the valueChangeListener isn't been invoked. This would cause problems if you select a child menu value and then select the parent menu back to null and then reselect it to same value again, the child menu which will show up again would remain the same selection instead of null while its child will not be rendered! To solve this we need to bind the menu's to the backing bean so that we can use UIInput#setValue() and UIInput#getValue() to set and get the actual values.+ The JSF lifecycle will set and get them in the RESTORE_VIEW and RENDER_RESPONSE phases respectively.+
    I am not sure I understand whether or not it is a limitation but the reason above is valid and I rolled back to binding my menus and getting to work with that.
    Is Binding UI components a wise idea because most of the attributes can be programmed using properties in Backing Beans unless you have to build new components?
    Thanks Again

  • Value change using DataSocket can't create value change event on remote computer?

    I am trying to create an event on the remote computer:
    Local computer:
    Change a value in remote computer by DataSocket.
    Remote Computer:
    create a event: when the value changes.
    I can see the value change on the remote computer; however, the value change doesn't cause the "value change event".
    Anyone tried this before?  Thanks.
    ------- LabVIEW 2009, So Easy, Even a Therapist Can Do It -------

    Hi,
    Event Structure monitors a specified event based on user interaction on the front-panel objects. However, it does not monitor event generated programmatically like a change in the DataSocket data value. In order to generate a value change event with the DataSocket, you will need to use the "value (signaling)" property node for the DataSocket data or control. This property node sets the value of the control and also generates a Value Change event.
    To create the property node, simply right click the control and select "Create>>Property Node>> Value (Signaling)". You can then wire the output from the DataSocket read to this property.
    You can also checkout this knowledgebase entry for additional information.
    Tunde

  • Value-Changed Events

    There are two basic events, action and value-changed events.
    How is the server informed of a value-changed event? Does this include javaScript? If not, how is this handeled?
    Thx,
    Sven Haiges

    JSF is a server-side technology, so while JavaScript can be generated for some client-side behavior, the bulk of the processing (and the only processing that is guaranteed to work for all client types) happens on the server.
    Value-changed events are generated on the server when the form is submitted, by comparing the component's old value to the new value recieved with the request. In other words, these events are not triggerd by simply changing the value in the browser; the form must be subitted before the event is triggered (which, of course, can be initiated by JavaScript code immediately when the value is changed in some client-types).
    I hope this helps.

  • Newbie: UITextField's "value changed" event won't fire

    I'm trying to get a UITextField's "value changed" event to trigger whenever it's value is changed with the keyboard or if some other control changes it via setting the myTextField.text property. For some reason, this event will not fire and call the event handler.
    I tried connecting the other events such as "Editing Did Begin" to the event handler, and it works. But "Value Changed" event never fires. Is it a supported event or am I missing something

    I had the same problem, this works:
    [myTextField addTarget:self action:@selector(textFieldDidChange:) forControlEvents:UIControlEventEditingChanged];

  • Double value change event if cursor is set busy (LV2009)

    Hello everybody,
    I just migrated from LV 8.0 to LV 2009 (on linux) and now got problems with a value change event. I want to send a command if a button is pressed and send another one if the button is released. After sending the command I need to wait for an acknowledge from the receiver and to avoid user interaction in between I lock the cursor with "set busy" VI until the acknowledge is received. To see, when the button is pressed or released, I use a value change event. Inside the event structure the cursor is set busy.
    This worked reliable in LV 8.0 but not any more in LV 2009. The button's mechanical action is set to "switch until released" and if I press the button and keep it pressed it is reset to false automatically. The value change event is fired twice instead of only once (see attached vi) and "new value" is one time true and one time false. This doesn't happen if the mechanical action is set to "switch when pressed".
    Does anybody have an explanation or a workaround for this behaviour? Am I doing something wrong or is this a bug in LV? For now I'll just keep the cursor unlocked.
    Thanks for your help.
    Attachments:
    setMouseBusy_01.vi ‏11 KB

    Hi ckis,
    attached you'll find your modified example, it should do the trick now.
    Regards,
    Bernd
    Attachments:
    setMouseBusy_01.vi ‏9 KB

Maybe you are looking for