If I could, I'd go into the lengthy details of my prototype implementation in an effort to illustrate how I've been able to accomplish a good robust reusable architecture (honestly, it's really good). I just don't think it would help you that much since it is .NET specific (but maybe).
The idea though, is that I have a base class called AjaxControl, which my widgets all derive from (there is both a client-side base class and server-side .NET baseclass with the same name -- the server-side baseclass inherits from the .NET type UserControl). Server side, the controls get their data/process/do all the server side stuff and populate their form fields/inner widgets and serve up the rendered HTML to the client-side versions via AJAX, which basically just issues a command that updates the innerHTML property of the specified DOM element and issues an eval() command on all parsed javascript that may have been contained within the widget. The prototype-based client side object references for the widgets automatically contain references to all the instanced DOM elements that are a part of that specific control, which are auto-IDed uniquely so I can have any number of widget instances on a page at the same time. So basically I have created a web service layer that can dynamically request and serve widgets on-demand. There is obviously more to it, but I can very easily author a new control (component) simply by inheriting from the AjaxControl baseclass. Now, in Java I'm not sure if there is something similar to a .NET UserControl (web part, portlet, etc..?), but perhaps the model can be ported to Java as well... maybe I'll take some more time one of these days and put together something more detailed for you. -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Martin Marinschek Sent: Tuesday, January 03, 2006 3:10 PM To: [email protected] Subject: Re: [Rails-spinoffs] Status of Prototype But if we'd take that approach in building every framework, we'd get nowhere regarding component-based reuse. Don't you guys want a solution for this, once and for all times? regards, Martin On 1/3/06, Ryan Gahl <[EMAIL PROTECTED]> wrote: > Hmm, yes, hadn't thought of that part. I, too, use script.aculo.us (and > rico). I don't know then, maybe Dojo is the answer for you Martin. I've > only run into a collision with prototype once so far (some other library > tried to define a function called Hash, so since I didn't need 2 > definitions in my implementation, I canned the other one.) I just think > of it like this, the collective combination of libraries loaded into an > application or a page results in a single "namespace"... mine. I do what > it takes to make sure necessary frameworks work together. It's the > nature of the beast. > > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On Behalf Of > Michael Peters > Sent: Tuesday, January 03, 2006 2:58 PM > To: [email protected] > Cc: [EMAIL PROTECTED] > Subject: Re: [Rails-spinoffs] Status of Prototype > > > > Ryan Gahl wrote: > > Still not understanding why you don't just apply your ideas to your > > implementation of prototype.js? Just because it's not in any kind of > > official release doesn't mean you can't add prefixes to your copy. And > > the prototype library is small enough that if you ever need to upgrade > > it, it's not going to take you that long to re-apply the prefixes. > > I personally think this is also a mess. Not only does it mean that you > have to > edit your copy of the prototype lib, but you also have to edit any other > libraries that may depend on it (script.aculo.us, rico, etc) and he > would also > have to create special docs for his users, etc. Not alot of fun. > > > I'm afraid you're looking for the perfect solution, which I'm afraid > > does not exist. I'll bet in the long run it's a better choice to stick > > with prototype.js and use your prefix idea rather than spend all the > > time to convert to dojo which may not even solve your problem... But I > > don't know your project like you do I guess. > > Even if Ajile doesn't work for everyone, it might work for him (even if > it does > add some overhead). > > -- > Michael Peters > Developer > Plus Three, LP > > _______________________________________________ > Rails-spinoffs mailing list > [email protected] > http://lists.rubyonrails.org/mailman/listinfo/rails-spinoffs > > The information transmitted in this electronic mail is intended only for the > person or entity to which it is addressed and may contain confidential, > proprietary, and/or privileged material. Any review, retransmission, > dissemination or other use of, or taking of any action in reliance upon, > this information by persons or entities other than the intended recipient > is prohibited. If you received this in error, please contact the sender and > delete the material from all computers. > > _______________________________________________ > Rails-spinoffs mailing list > [email protected] > http://lists.rubyonrails.org/mailman/listinfo/rails-spinoffs > -- http://www.irian.at Your JSF powerhouse - JSF Consulting, Development and Courses in English and German Professional Support for Apache MyFaces _______________________________________________ Rails-spinoffs mailing list [email protected] http://lists.rubyonrails.org/mailman/listinfo/rails-spinoffs _______________________________________________ Rails-spinoffs mailing list [email protected] http://lists.rubyonrails.org/mailman/listinfo/rails-spinoffs
