Been doing a lot of searching today to find leads, and I think I got
something in BeanBlockOverrideSourceImpl.

Using PageRequestCache and page.getRootElement().getBlock(blockId) seems to
be a promising lead. This way I can have a Strategy service that returns the
page name that contains display blocks for the given entity object.

I feel like I'm digging quite deep into the inner mechanics of Tapestry
(PageRequestCache is an internal service), but I guess there is no way to
avoid that with such advanced requirements?


On Sat, Jun 19, 2010 at 12:14 PM, Inge Solvoll <inge.tapes...@gmail.com>wrote:

> Hi!
>
> I'm trying to migrate our company's software over to a more plugin oriented
> architecture.
>
> So far I've come up with some services that utilize the Strategy pattern to
> produce information about different modules in our system, without the core
> module knowing anything about their implementation. Detail modules push info
> to the core module by contributing to my strategy service.
>
> My next challenge is to aquire components the same way. More specifically,
> I want some core application page /component/service to lookup the correct
> component/block for displaying information about a specific module that it
> doesn't know. I would like to do this using the same pattern (strategy).
>
> I think I've seen people on the list talking about creating pages with
> blocks in them, and then access these blocks from the core page. If this is
> true, does anyone have code samples on how to inject, activate and render
> other pages and move some specific block into the current page?
>
> Am I making sense or do you need more/better details?
>
> Inge
>

Reply via email to