I've started a project on the side using JSF and am trying to decide
on an AJAX component library. I'm debating between using A4J, which I
have used before and Trinidad, which I have not. Here are the
libraries that I have decided it must work with:

MyFaces 1.1.5 (or 1.2.0)
Tomahawk 1.1.6
Facelets 1.1.11
JBoss Seam 1.2.1

Functionality I would like/require:
* re-rendering of specific components
* submission, decoding, validating and updating of only select components
* ability to run custom busy java script code to be run while AJAX
request is being processed
* Clear API for writing custom components to leverage AJAX functionality
* Clear API for specifying re-rendered components in backing bean actions
* ability to run javascript after an AJAX call is complete that
differs per-component
* clear javascript hooks into the client side API for customizing the behavior
* ability to skip the update phase to just check for
validation/conversion errors (would be nice functionality)

Would like to see these types of components:
* SPAN/DIV AJAX "areas" to be able to re-render them to AJAX enable
non-ajaxed components
* ability to specify which components to submit/decode/validate/update
(tomahawk sandbox subForm can work if it resorts to that)
* polling component
* ajax-enabled include that works with JSF navigation (would be nice)
* ajax on event functionality (re-render such-and-such when a select
box changes value for example)

Ajax4JSF has all this functionality and I like it but I have issues
with it, and I want to see what the Trinidad team has to say.

Problems I have with A4J:
* LGPL license, so no hope of components written by the Apache team
that will work with it
* Very limited component library that supports it (RichFaces)
* RichFaces lacks many components that are "standard"
* RichFaces API is lacking as well as the quality (I find that if you
use their controls slightly differently than they tested them you
starting hitting all kinds of problems)

>From what I have seen so far with trinidad, I have not seen any of the
ajax functionality really exposed. Are there any components equivalent
to a4j:support, a4j:region, a4j:poll?

How easy is it to write custom trinidad ajax components?

So really, I just want to hear how the trinidad functionality stacks
up against A4J

Thanks,
Andrew

Reply via email to