Answering Howard's Blog - Wednesday, March 08, 2006 - "From the fanciful ideas
category ..."

>Wouldn't it be nice if I could just plop the following into the middle of my
form?

  <span jwcid="@edit:EditObject" object="ognl:pojo"/>

The Cognition Framework Edit component basically works just like that, i.e.:

<span jwcid="[EMAIL PROTECTED]" persistent="ognl:new
com.thelabllc.product.orm.model.Product()" />

Form fields are wrappered Tapestry components called EditTypes.  We cover the
basics - text, radio button, propertyselection, etc.

For any new field you can just create a new EditType (EditTypes are Hivemind
contributions).  For example, if you have a composite field of three textboxes
that needs to be validated in a particular way, (i.e. US phone number) 
you create a 'Phone' EditType and then this can be reused within any Edit
component easily.

As more people contribute, this has the power to be a very comprehensive list of
EditTypes available for any form.


>And, of course, some set of annotations to define the validation of those
properties.

We do this via XML at this time, using Validators and Translators, with editable
defaults put in for most datatypes.

We will have more annotation support for items like this in the future.  The
advantage that the XML provides is that your configuration is not tied to your
code; you can potentially have Nth number of variations on how you'd like to
display your field in a form.


>Maybe even so carefully named Block components to provide row overrides?

Done, you can override form items with a Block.


>I think this logic would kick ass when building prototypes.

Time to take names.  ;)

http://www.thelabllc.com


........................................

Steve Motola
[EMAIL PROTECTED]
(310) 422-5521

The Lab, LLC
http://www.thelabllc.com

Content is for intended recipient only.

----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to