Since this group is more crowded, I took the liberty to crosspost a portion of my message, that I mistakingly sent to dev group.
Struts-only or JSP-only solution is not good enough. The more portable is the better, so when I read Frank's proposal I thought, why those input controls are generated with custom tags? What if controls were created with Javascript? Custom tags would be generating setup parameters for these Javascript instead of generating input controls directly. The result is greater portability for the control library: basically, it would be a pure Javascript library. Appropriate (and portable) API would have to be created for controls' setup parameters. This API would describe Javascript methods as well as certain DOM structures and maybe whole page structure as well. Then, to port the library to other framework or language, only the code which creates parameters should be changed. Porting a pure Javascript library with Java-based API for input data may be easier, than porting Java-based tag library. I am not exactly sure now, how my variation of Frank's idea would look like, if I had several same components on a page. How to set up each of them separately? I guess, just by assigning an ID or name to each of them. I still think that this could be a more portable library, than generating all HTML markup from a taglib. Before reading Frank's proposal I was thinking about larger pieces of webpage, kind of like portlets. Frank suggests fine-grained approach, with event handlers for each button. What if these approaches were combined? We would have "controls" like in a desktop application, from button, to paragraph to table to div (basically all input controls plus block elements). Of course, div itself cannot accept input, so all these elements would have to have FORM on them. So, a page can be anything from monolitic page with ajax controls with individual event handlers, to portal-like page consisting of ajax blocks. Michael. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]