Christian Boulanger wrote:
Writing an application server (which this will be) is a tall order. Not in the sense that the coding is necessarily hard to do, but gaining community
support and interest in it and growing its featureset in a standard and
controlled manner. There are already a lot of frameworks out there that we can integrate with much faster than writing our own. It also gives us access
to already existing communities.
If there is one, I will happily take it, we don't need to reinvent the wheel. I have so far not found one that can do the things I have outlined. But maybe more research is needed.

I don't believe we're proposing to build an application server. To me, an application server does things like provide thread management, concurrent request handling, security, management integration, transaction management, web server capabilities, web service interoperability etc. The proposal for this project is essentially an XML layer with client-side Qooxdoo widgets that are optimised to use a standard set of server-side callbacks, and those server-side callbacks are achieved using a remoting protocol that is language independent and thus can be implemented using the server-side language of each developer's choice.

IMHO we should focus on a phased approach that will publish components as
they become available so they can be used much faster than a complete
framework. Something like this:

1) XML standard to describe a qooxdoo app
2) Implement the loading of the XML into a qooxdoo application
3) Define and implement an event callback system that can trigger
server-side code based on UI events
4) Integrate the above components with several popular frameworks
Looks excellent to me.

Has anyone taken a good look at XUL? It seems to achieve much of what we have in mind. It could be a source for a lot of inspiration on how to separate JavaScript from the XML-defined user interface files, and also structuring deployment files. We could conceivably write a Qooxdoo class call QxLauncher, which hits a URL to download and execute an archive file containing the Qooxdoo application.

We can then do several things. We can standardize and abstract the XML to encompass other frameworks like dojo. Same for the callback system. We could
also based on all common requirements develop a specification that a
server-side framework should follow to fully support our UI XML standard. If no other framework steps up to the plate to implement the standrd fully we can write our own extensions for other frameworks or we can then decide to
implement our own.
Agreed!

I don't agree the XML language should be abstracted and not specific to Qooxdoo. Whilst abstraction makes something general purpose, it comes at the cost of less power and generally more verboseness. If we wanted to write a framework that can parse some sort of existing XML language, we might as well focus on providing a Qooxdoo port of XUL. At least there are a variety of other ports, giving some justification to the effort and supporting what is effectively a de facto standard for this sort of thing.

The other alternative is to develop an inversion of control (IoC) container for Qooxdoo. An IoC container could be sufficiently general-purpose that it can instantiate Qooxdoo classes from XML definitions. I'm involved in the Spring Framework (http://springframework.org), which provides this sort of capability. It's possible to build user interfaces on top of an IoC container, as the Spring Rich project demonstrates. An IoC approach for Qooxdoo would have some significant value, and indeed IoC more generally would be something that could be developed outside of Qooxdoo (the whole concept of IoC is to avoid framework dependence, so neither Qooxdoo would depend on the IoC framework nor would the IoC framework be designed with Qooxdoo in mind). For those not familiar with IoC, it's probably worth doing a Google as this would represent a good opportunity to decouple application configuration from actual JavaScript code.

Cheers
Ben


-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
_______________________________________________
Qooxdoo-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel

Reply via email to