You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cocoon.apache.org by Sylvain Wallez <sy...@apache.org> on 2005/04/21 11:33:55 UTC

Re: Transparent and automatic AJAX support for Cocoon Forms

Michael McGrady wrote:

>Thought I'd pass on to the Struts list the great success and popularity Frank Zammetti's ideas are having on the Cocoon list.
>  
>

Ahem...

I'm very sorry, but the ajaxification of Cocoon has *nothing* to do with 
Frank Zametti's ideas. These ideas are *mine* and I *never heard of 
Frank before*. You should have read the detailed description of my work 
[1] to understand how different they are from Frank's very classical use 
of XHR (nothing original here - there are plenty of similar articles 
around).

I took a completely different approach, requiring absolutely no 
page-specific client-side JS code. The use of XHR is totally transparent 
and the page writer doesn't have to care about it.

Client-side JS detects the availability of XHR in the host browser and 
uses it if it exists. Otherwise, a regular form post is done. On the 
server side, when answering to an XHR request, Cocoon produces partial 
page update directives, just by adding an additional transformer (it's a 
filter in Cocoon parlance) to the production pipeline of the regular 
full page. These update directives are then parsed by the client-side JS 
to update page parts that need to be updated.

The result is that, using a small generic client-side JS library (approx 
200 lines with comments etc), you can ajaxify any kind of form or page 
with most often nothing to do in page templates. And it degrades 
gracefully to full-page reloads on non ajax-aware browsers.

This is a very productive approach that avoids most classical problems 
of Ajax: there's no need for a lot client-side JS code that is difficult 
to make really cross-browser, difficult to test, avoids opening too many 
entry points in the application that could create security holes.

So please, rather than taking attribution when it's totally unjustified, 
consider learning from other's ideas.

Sylvain

[1] http://marc.theaimsgroup.com/?l=xml-cocoon-dev&m=111348478712544&w=2

-- 
Sylvain Wallez                        Anyware Technologies
http://apache.org/~sylvain            http://anyware-tech.com
Apache Software Foundation Member     Research & Technology Director


Re: Transparent and automatic AJAX support for Cocoon Forms

Posted by Michael McGrady <mi...@gmail.com>.
Well, first of all, I was not talking about you.  I was talking aboiut
Antonio Gallardo and cited his notes on Cocoon.  You, no doubt, should
be the one I was talking about.  And, if I had done what I should have
done, I guess, then you would be right to be angry, I think.  Reminds
me of the old saw "I'm not much but I am all I think about".  And,
second of all, I took attribution and gave attribution for nothing. 
Reminds me of the old saw "Much ado about [absolutely] nothing."

You might note that the article referenced is by a gentleman called
Frank W. Zammetti.  Okay?

Take a deep breath.

On 4/21/05, Sylvain Wallez <sy...@apache.org> wrote:
> Michael McGrady wrote:
> 
> >Thought I'd pass on to the Struts list the great success and popularity Frank Zammetti's ideas are having on the Cocoon list.
> >
> >
> 
> Ahem...
> 
> I'm very sorry, but the ajaxification of Cocoon has *nothing* to do with
> Frank Zametti's ideas. These ideas are *mine* and I *never heard of
> Frank before*. You should have read the detailed description of my work
> [1] to understand how different they are from Frank's very classical use
> of XHR (nothing original here - there are plenty of similar articles
> around).
> 
> I took a completely different approach, requiring absolutely no
> page-specific client-side JS code. The use of XHR is totally transparent
> and the page writer doesn't have to care about it.
> 
> Client-side JS detects the availability of XHR in the host browser and
> uses it if it exists. Otherwise, a regular form post is done. On the
> server side, when answering to an XHR request, Cocoon produces partial
> page update directives, just by adding an additional transformer (it's a
> filter in Cocoon parlance) to the production pipeline of the regular
> full page. These update directives are then parsed by the client-side JS
> to update page parts that need to be updated.
> 
> The result is that, using a small generic client-side JS library (approx
> 200 lines with comments etc), you can ajaxify any kind of form or page
> with most often nothing to do in page templates. And it degrades
> gracefully to full-page reloads on non ajax-aware browsers.
> 
> This is a very productive approach that avoids most classical problems
> of Ajax: there's no need for a lot client-side JS code that is difficult
> to make really cross-browser, difficult to test, avoids opening too many
> entry points in the application that could create security holes.
> 
> So please, rather than taking attribution when it's totally unjustified,
> consider learning from other's ideas.
> 
> Sylvain
> 
> [1] http://marc.theaimsgroup.com/?l=xml-cocoon-dev&m=111348478712544&w=2
> 
> --
> Sylvain Wallez                        Anyware Technologies
> http://apache.org/~sylvain            http://anyware-tech.com
> Apache Software Foundation Member     Research & Technology Director
> 
>