Forum OpenACS Q&A: Rich Internet Apps

Posted by Nick Carroll on
Hi All,

I've been looking around at Rich Internet Apps, and frameworks that support RIAs. I remember there was discussion of Laszlo a while back, and we all thought it was cool. However integrating it into OpenACS seemed overly complex.

The latest on RIAs at the moment is AJAX, as seen in gmail and google suggest. One project in particular that provides a javascript implementation of AJAX is I believe Rico has its roots in Ruby on Rails. Has anybody used rico in openacs?


2: Re: Rich Internet Apps (response to 1)
Posted by Harish Krishnan on
Very interesting link Nick. I have been experimenting with Javascript based Ajax on the top header,ad_form and portlets. It would be interesting to create an intuitive way for developers. For example having a switch in listbuilder or ad_form to use Ajax.

I was exploring Rails way of approaching it. The Xmlhttp requests are directly mapped to methods in the controller, So the developer has to only think about which component of his view maps to a method. The rest the framework takes care.

One of the way we do this in openacs is by providing a way for xmlhttp requests to be directed to a single URL in a package ( or even to a single url on the site ):
For example:
In the Notes package we can have a script www/view.adp or tcl. Then we define all the "adp lets" in the lib directory and call the appropriate adp piece. The XMLHTTP requests would have a single url and a query variable called method which the "view" page serves.

3: Re: Rich Internet Apps (response to 1)
Posted by Alfred Essa on
Yesterday several of us (myself, Andrew Grumet, Julie Bergfeld, and DeeDee Kane) saw a demonstration of LAMS by James Dalziel. This visual authoring environment is all web-based and done in Flash.

I believe it was all coded from scratch without use of Macromedia's dev environment. I am not sure what the effort was, but the result was gorgeous.

Ernie (one of the principals in the LAMS project), can you tell us what your experience has been with Flash and what you think?

4: Re: Rich Internet Apps (response to 1)
Posted by Alex Kroman on
At IBR we have a lot of internal forms that require selecting something from an extremely long list. Recently I've been exerimenting with AJAX autocomplete fields. The code I was using can be found here (I didn't write it):

This is working to speed up forms a lot because rather then picking through a select box with hundreds of entries users can just start typing to get to their selection.

It might be interesting to see something like this in ad_form so OpenACS could have AJAX style-autocomplete out of the box.

5: Re: Rich Internet Apps (response to 1)
Posted by Dave Bauer on
and based on prototype are javascript libraries with similar features for drag and drop and other effects.
6: Re: Rich Internet Apps (response to 1)
Posted by Nick Carroll on
I think Rico has a dependency on Prototype.
7: Re: Re: Rich Internet Apps (response to 3)
Posted by Ernie Ghiglione on
Yes, LAMS uses Flash for some for some of its interfaces. As Al mentions, the work has done completely from scratch and took a really long while to get it right.

The most difficult part is to get Flash developers, as most of the people that work with Flash are graphic designers but not programmers that can do actual code in actionscript (the scripting language Macromedia uses).

The communication between the Flash movie and the backend is done thru an open XML data transfer standard called WDDX ( It's a bit of a nightmare to get your head around it, but in principle, it allows you to serialize Java objects and pass them to Flash, and Flash can make sense of them. However, as you can imagine it ain't so easy, as Flash does not have a rich varieaty of datatypes as Java does, so there's quite a fiddling to do there.

We are currently redoing the entire Flash interface for the next LAMS release (which includes I18N in Flash, resizeable windows, change skins on the fly, etc) and the most difficult part has been the time that it takes you to create a framework in Flash that allows you to do all this. We looked at Lazlo but realized that it wasn't going to be as easy and didn't provide the flexibility we wanted so we went with our home brew recipe.

Now, I've been looking at some of the work the Google fellows have been doing with and it's very very nice. So I guess Javascript is also another option for rich web interfaces.

Surprisingly enough, at times the fact that you require Flash clients on browsers seems to be a bit of a burden for system admins at some Universities or highschools. In addition, Firefox seems to have a memory leak when using Flash for a while (we have experience this at times). Hopefully that will be fix shortly by the Macromedia fellows, but until it gets fix, your application might be suffering a bit, which might be a thing to take into account.

Overall, if you want to go Flash all the way, probably the most difficult part is to get good Flash devs that understand what an object is and are not scared to parse very large and cryptic XML documents :-)

If you want to have a look at the Flash source code in LAMS, you can download the source code from the site.

Hope that helps,


8: Re: Rich Internet Apps (response to 1)
Posted by Walter McGinnis on
I've done an openacs integrated autocomplete for user search like functionality with AJAX and after getting my bearings with Javascript it was actually pretty easy. It definitely beats the pants off the current user search widget.
9: Re: Rich Internet Apps (response to 1)
Posted by Malte Sussdorff on
Hey Walter, can we take a look at the code? Are you going to improve the current user search widget accordingly?
10: Re: Rich Internet Apps (response to 1)
Posted by Alexander Antonakakis on
Here is a link I found with a little demo in Live Search using XMLHttpRequests
11: Re: Rich Internet Apps (response to 1)
Posted by Flash6 Designer on
Hi Nick,

Check this.

I found it interesting.

a light weight framework to script in xml and generate flash websites.