I've been wishing that form declaration was unified, rather than using struts-config for some and validator for another part. Now to think about what to actually do about it, hmmm.
Kudos to Jon for taking the time to propose something, in any case...
Joe
At 5:23 PM -0400 6/30/03, Ted Husted wrote:
Fixing ConvertUtils would seem like a better solution to me than making this many workarounds to support a single data type.
If we make these kind of patches to Struts, we've only "helped" Struts. If we fix ConvertUtils, we can help any other application or framework that uses ConvertUtils.
I believe the consensus has been that the ActionForm should represent Strings as they are entered into the HTML form. Once the Strings pass validation, then data conversion should occur as the data moves toward the business and system tiers.
I would agree that the ActionForm oversimplifies the problem. There is definitely a need for a object that incorporates many more attributes into a single configuration, target datatype being one of these. But, IMHO, offering up a patch for just the Date datatype would be a step in the wrong direction.
We've come to say that the ActionForm is the missing buffer for the HTML controls. I would suggest that we should take that to heart and make it an actual buffer object for data-entry controls. We've already started to add a second layer of description to the ActionForm in the guise of the Validator forms. We've also started to define the ActionForm itself in XML under the auspice of DynaValidatorForm. Perhaps we should put both of these things together and define a true field and form buffer object that can be define in XML.
Aside from target datatype, the Field/Form descriptor could also have places to define the label, displaysize, maxlength, control, readonly, disabled, tabindex, required, validator, default, alt, altKey, style, styleClass, styleId, title, titleKey, and Java on* events.
We already enter all of these things into the application someplace, and it would be helpful if they could all be gathered together where they could be reused.
The object would be an excellent place to put more advanced data conversion routines, such as those required for dates. It could also be used by other applications and frameworks outside of Struts.
--
--
Joe Germuska [EMAIL PROTECTED] http://blog.germuska.com "If nature worked that way, the universe would crash all the time." --Jaron Lanier
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]