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

Reply via email to