Mike, You (or Andrew Robinson) could check out the SetActionListenerTag code I contributed to Facelets at:
https://facelets.dev.java.net/source/browse/facelets/contrib/1.4/adf/src/java/com/sun/facelets/oracle/adf/SetActionListenerTag.java?rev=1.1&view=auto&content-type=text/vnd.viewcvs-markup ... as an example of how to better take advantage of the Facelet API to massively simplify the code, and make it much higher performance. In particular: - Use the built-in ComponentSupport.isNew(UIComponent parent) instead of the custom sourceHasProperty() method - Use TagAttribute.getValueExpression() (and wrap in a ValueBinding adapter) instead of app.createValueBinding() (the value expressions are cached and reusable). -- Adam On 12/19/05, Mike Kienenberger <[EMAIL PROTECTED]> wrote: > If you want to also make sure you're supporting non-component tag > handlers for facelets, you can find a facelets tag handler for > UpdateActionListener (apache 2.0 licensed) at this link, courtesy of > Andrew Robinson: > > http://cvs.sourceforge.net/viewcvs.py/jsf-comp/facelets/tagHandlers/src/net/sf/jsfcomp/facelets/taghandlers/tomahawk/UpdateActionListenerHandler.java?rev=1.2&view=log