Hello Simon,
thanks for publishing your request on the dev list again.

As Greg noted, Magnolia is willing to build the new Magnolia 4.0 GUI (code-named "GenUIne") on top of a complete webservice stack (using JAX-WS 2.x [1] compliant webservices opposed to XML-RPC) to access the backend. At least this is the current result of the technological discussion about GenUIne. Before we also discussed a JSF based approach, however, for the time being ruled it out since the WS approach offers more possibilities and flexibility for the future, see [2] for details.

The ultimate goal is to decouple the Admin Central from the core of Magnolia: this way the Admin Central could have its own development life-cycle and could be developed much more independently. Furthermore, we would exactly met your requirements by letting other applications access Magnolia in a standardized and interoperable manner. One could even think about different GUI implementations, e.g. as plain - again - JSP/JSF based frontends, rich web clients (à la Adobe Flex) or statically delivered, full blown AJAX clients (whereas the latter one is the approach we're investigating at the moment).

Back to your questions. So far, the only "rough architectural notes" I can offer you are the following three scribbles outlining the request life-cycle in the webservice scenario [3] and the JSF scenario [4]. Figure [5] outlines how we could even reach both targets leveraging Java 5 annotations (especially JAX-WS annotations and JBoss Seam (?) like annotations for JSF managed-beans).

As I said, those are only "rough" scribbles and quick ideas of mine on how we could simplify the GUI development. Of course, these are early stage drafts, however, I would be glad to see any discussion about the architecture on the list and in the Wiki [6] as well.

Especially, I think we should discuss about the following topics:
* most important: webservice decomposition; which functionality is exposed as a webservice, how coarse-grained or fine-grained should the interfaces & methods be. E.g. we could expose the hierarchy manager as a webservice and that's all we need, even though not convenient at all. * can (or shall) we create an architecture in that every module can collaborate in exposing its part of the Magnolia's model as webservice? Or is this all handled by one single module? * do we have to take additional steps to make the Magnolia infrastructure (security, context, etc.) work with webservices? Easiest would be (indeed without any modification) to have the Magnolia filter chain as is handling the request before passing it to a servlet that handles the webservice request. Thus having the full context available in the webservice.

So far, my thoughts. I think much more questions will arise as soon as we really start. Again, I would be very glad to see an ongoing discussion on this topic.

FYI: I'm currently blogging about the new Magnolia GenUIne, specifically the next post (to be published at latest next monday/ tuesday) will cover the technical status I roughly described here. I'd like to invite you following those blog posts under http://vivian.steller.info/blog/

Best Regards,
vivian

[1] http://jcp.org/en/jsr/detail?id=224
[2] 
http://wiki.magnolia.info/display/DEV/Genuine+-+Decision+Table+-+Server-Side+Technologies
[3] 
http://wiki.magnolia.info/download/attachments/7241760/Webservices+Rendering+Scenario.png?version=1
[4] 
http://wiki.magnolia.info/download/attachments/7241760/JSF+Rendering+Scenario.png?version=1
[5] 
http://wiki.magnolia.info/download/attachments/7241760/Common+Architecture.png?version=1
[6] http://wiki.magnolia.info/display/DEV/Genuine+Technology+Discussion


Am 15.07.2008 um 17:36 schrieb Simon Goodchild:

Hi there. Greg suggested I repost this from the user list:

For a while now I've been wanting to access magnolia functions and
content via external applications, so I'm looking into what options
are currently available and any modules or core enhancements that
might already exist. The key requirement would be to communicate with
the magnolia backend from another application, possibly running on a
different server, in order to retrieve content, and to create pages
and users within the system. A mechanism like XML-RPC would seem to be
ideal for this purpose.

Greg mentioned that this is being looked at for inclusion in 4.0, but
sounds like that will be some time away. So my intention is to write a
module to add an XML-RPC integration layer to magnolia. Ideally I
would like to make this a useful base for whatever mechanism you have
planed, as this would avoid duplicated effort and also help with
long-term support and enhancement. So are there any rough architecture
notes or pointers that anyone could provide on how this should ideally
be implemented? And if anyone wants to collaborate on the work then
let me know also.

Thanks for any input,

Simon

----------------------------------------------------------------
for list details see
http://documentation.magnolia.info/
----------------------------------------------------------------


----------------------------------------------------------------
for list details see
http://documentation.magnolia.info/
----------------------------------------------------------------

Reply via email to