So, should I set immediate to true on the drop down with the
valuechangelistener?

Also, I have some strange behavior. It looks like the phase listener
methods are being called twice. Here is a dump of my log:

2006-05-02 14:37:48,435 DEBUG javax.faces.webapp.FacesServlet  - service
begin
2006-05-02 14:37:48,451 DEBUG
com.fxall.scadmin.jsf.listeners.SCAdminPhaseListener  -
beforePhase::Processing new  Request!
2006-05-02 14:37:48,451 DEBUG
com.fxall.scadmin.jsf.listeners.SCAdminPhaseListener  - before -
RESTORE_VIEW(1)
2006-05-02 14:37:48,451 DEBUG
com.fxall.scadmin.jsf.listeners.SCAdminPhaseListener  -
beforePhase::Processing new  Request!
2006-05-02 14:37:48,451 DEBUG
com.fxall.scadmin.jsf.listeners.SCAdminPhaseListener  - before -
RESTORE_VIEW(1)
2006-05-02 14:37:48,529 DEBUG
com.fxall.scadmin.jsf.listeners.SCAdminPhaseListener  - after -
RESTORE_VIEW(1)
2006-05-02 14:37:48,529 DEBUG
com.fxall.scadmin.jsf.listeners.SCAdminPhaseListener  - after -
RESTORE_VIEW(1)
2006-05-02 14:37:48,529 DEBUG
com.fxall.scadmin.jsf.listeners.SCAdminPhaseListener  - before -
RENDER_RESPONSE(6)
2006-05-02 14:37:48,529 DEBUG
com.fxall.scadmin.jsf.listeners.SCAdminPhaseListener  - before -
RENDER_RESPONSE(6)
2006-05-02 14:37:49,467 DEBUG com.fxall.scadmin.web.jsf.SearchBean  -
SearchBean created...
2006-05-02 14:37:49,529 DEBUG com.fxall.scadmin.web.jsf.SearchBean  -
setSearchManager called...
2006-05-02 14:37:49,576 DEBUG
com.fxall.scadmin.web.jsf.SettlementEntitiesMapBean  -
setAccountsManager called...
2006-05-02 14:37:49,576 DEBUG
com.fxall.scadmin.web.jsf.SettlementEntitiesMapBean  -
setEntitiesManager called...
2006-05-02 14:37:49,576 DEBUG
com.fxall.scadmin.web.jsf.SettlementEntitiesMapBean  -
setSettlementManager called...
2006-05-02 14:37:49,654 DEBUG
com.fxall.scadmin.jsf.listeners.SCAdminPhaseListener  - after -
RENDER_RESPONSE(6)
2006-05-02 14:37:49,654 DEBUG
com.fxall.scadmin.jsf.listeners.SCAdminPhaseListener  - Done with
Request!
2006-05-02 14:37:49,654 DEBUG
com.fxall.scadmin.jsf.listeners.SCAdminPhaseListener  - after -
RENDER_RESPONSE(6)
2006-05-02 14:37:49,654 DEBUG
com.fxall.scadmin.jsf.listeners.SCAdminPhaseListener  - Done with
Request!
2006-05-02 14:37:49,654 DEBUG javax.faces.webapp.FacesServlet  - service
end 


Frank Russo
Senior Developer
FX Alliance, LLC


-----Original Message-----
From: Adam Winer [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, May 02, 2006 2:31 PM
To: MyFaces Discussion
Subject: Re: Rendering Issue

Yep, Matthias is correct, though to be fuly specific it's called during
Process Validations, unless immediate="true", in which case it's called
during Apply Request Values.

It's good to learn *exactly* how values move through the JSF lifecycle:

1. Apply Request Values: submittedValue is set.
2. Process Validators: value is set, submittedValue is cleared,
ValueChangeEvents are delivered (unless validation or conversion
fails)
3. Update Model: model is set, value is cleared 4. Invoke Application:
no processing of values 5. Render Response: values are retrieved from
submitted value if set,
  otherwise value if set, otherwise model

If "immediate" is true, add that Process Validators logic to Apply
Request Values.

-- Adam



On 5/2/06, Matthias Wessendorf <[EMAIL PROTECTED]> wrote:
> > My understanding is that valuechangelistener  is called before
UpdateModel.
>
> ValueChangeListeners are called during Phase 3 (Process Validations) 
> Phase 5 (Invoke Application) there the ActionListeners are called 
> before the "action method" of your backing bean
>
> An interesting blog entry about "playing" with JSF's lifecycle is [1].
>
> -Matthias
>
> [1] 
> http://www.jroller.com/page/cschalk?entry=getting_familiar_with_the_js
> f
>



Reply via email to