Your problem reminded me of a similar situation - an actionlistener was not called because the form was not submitted, hence it skipped to decode all its child or facets. My hint is to set a breakpoint on javax.faces.component.UIForm inside processDecodes. Jörg