Dear Mr. Mason,

> Tapestry features so I can't us a conventional CMS like Magnolia. Has
> any one else had any success with this sort of integration.

yes, we had. If you look for example at "www.go7seas-kreuzfahrten.de",
you will see a "hybrid". The cruises, the booking process, ship and
journey information are all part of a tapestry application. All the
pages in the "Information" and "Service" areas are maintained by the
customer using the Magnolia CMS.
The site is somewhat "beta", so please be forgiving if you notice any glitches.

> What I was thinking was using Magnolia or another CMS as an editor
> then accessing the CMS's JCR data store (such as Jack Rabbit)
> directly. Then when the component tries to load its template it
> fetches it directly form the JCR.
[...]
> My problem is I am not really sure if this is possible using
> Tapestries IOC. I realise I could make changes to the tapestry code

I think the approach you describe is very well possible and would not
even involve any "low-level" changes or overriding services using
tapestry-ioc. One would have to implement a number of Tapestry
components that mirror the functionality given in the Magnolia JSP tag
library. Actually, I wanted to start an effort to do just that a long
time ago: "http://sourceforge.net/projects/tapestry-jcr/";. I haven't
found the time yet, though.

However, the approach has the drawback that you will have to maintain
two versions of your templates - a JSP-based one for Magnolia, and the
Tapestry ones. Basically, you'd have every page twice.

That's why we chose a different approach. We use Magnolias output as
the input for Tapestry. That is, the rendered Magnolia page is
actually a Tapestry template. Since Magnolia uses JSP, these to
approaches don't interfere. You can easily add t:ids and such to your
Magnolia templates.
You can use Tapestry's template location mechanism to  get the pages
from Magnolia, and put any pre-generation and/or caching in between.


Hth,

Lutz Hühnken

http://www.altocon.de/

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to