Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 4039512
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 20, 20262026-05-20T12:37:20+00:00 2026-05-20T12:37:20+00:00

Let’s say I have five or more input computers that can affect whether a

  • 0

Let’s say I have five or more input computers that can affect whether a single drop down menu is displayed. The issue I am running into is that if the drop down menu is displayed once (thus setting the value in the backing bean through ajax) and the user then changes one of the affecting input components, then the backing bean value of the drop down menu is not getting reset when the drop down goes into hiding using the rendered property. For example:

    <h:selectOneMenu id="sampleDropDown" required="false" immediate="true"
        onchange="jsUpdateSampleDropDownValue()" value="#{backingBean.value}" 
        rendered="#{backingBean.shouldShowSampleDropDown}" 
        actionListener="#{backingBean.listener}" />

I understand that I have options here. I’ve debated whether I should add a generic ValueChangeListener (apply request values phase) or an EventHandler (render response phase) that would listen in on the values of the other inputs and make a decision on whether to clear the drop down menu value but this certainly is more work then just letting the rendered property make that decision.

We’ve seen dozens of the same type of issue on the project I’m currently on and I’d really like to hear from the experts on the best practice for handling this type of situation. In case it matters we are using custom ajax (not ajax4jsf) and jsf 1.1. Any help is appreciated.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-20T12:37:20+00:00Added an answer on May 20, 2026 at 12:37 pm

    The solution I came up with is to not try and reset the input component in the backing bean value of the renderered property.

    I have a phase listener attached to the single page interface and am essentially passing request parameters in the javascript method (i.e. jsUpdateSampleDropDownValue()) so that business logic data can be loaded in the rendered response phase using the chain of responsibility pattern.

    When a request parameter is passed (i.e. RESET_SAMPLE_DROP_DOWN) onchange that matches a corresponding event handler (i.e. ResetSampleDropDownEventHandler), I check a separate “constraint” class (see Hardcore Java book) that validates whether enough data is accumulated before either clearing the binding value or continuing with the request.

    This allows the logic to be centralized yet be attached to multiple components. You may be asking why a single JSF ValueChangeListener was not attached to each component which would allow the same re-use. The reason for this is because our business logic takes place in the render response phase after the update model phase so it makes sence that any “reset” type methods occur after any “defaulting” of values.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Let's say that we have an ARGB color: Color argb = Color.FromARGB(127, 69, 12,
Let's say I'm building a data access layer for an application. Typically I have
Let's say you have a class called Customer, which contains the following fields: UserName
Let me try to explain what I need. I have a server that is
Let's say we have a simple function defined in a pseudo language. List<Numbers> SortNumbers(List<Numbers>
Let's say I have a drive such as C:\ , and I want to
Let's say I'm writing a PHP (>= 5.0) class that's meant to be a
Let's say you create a wizard in an HTML form. One button goes back,
Let's aggregate a list of free quality web site design templates. There are a
Let me preface this question by saying I use TextMate on Mac OSX for

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.