David Geary <[EMAIL PROTECTED]> wrote:
> I think this is all good stuff, but I'd rather see integration with
> Tiles instead of reinventing Tiles. Tiles has already covered some of
> this ground and I see no reason for us to follow.
I haven't used JSF enough to see if it fits the same pattern, but the
component-based frameworks I've used in the past have always made Tiles
unnecessary. Components are "tiles".
You build a component representing your layout and stick your other layout
components in it. Then you reference your layout component from your
general application pages.
An example (and possibly not the best example) from a four-year-old
Webobjects project. Note that WebObjects (and Tapestry as well from what I
understand -- RenderBody?) both allow you to access the parent document
content. It's unclear to me whether JSF is "component-based" enough to do
this as I haven't built any components with it yet. (Someone asked me this
question last week, and I haven't had time to find an answer yet.)
Component-based models allow you to do things differently, and I'm just
wondering if you're dragging some "old-school" methodologies into it
unnecessarily. Perhaps the answer is that there's no need to reinvent Tiles
OR integrate Tiles.
-Mike
==================== InternalExternalPageContent
======================================
<WEBOBJECT NAME=InternalExternalJSHeader>
<WEBOBJECT NAME=ShouldShowLeftSideMenuConditional>
<WEBOBJECT NAME=IsInternalConditional><WEBOBJECT NAME=LeftSideMenu>
</WEBOBJECT></WEBOBJECT>
<WEBOBJECT NAME=IsExternalConditional><WEBOBJECT NAME="LoginPanel">
</WEBOBJECT></WEBOBJECT>
<div class="content">
</WEBOBJECT>
<WEBOBJECT name=ParentContent></WEBOBJECT>
<WEBOBJECT NAME=ShouldReturnToLastPageConditional>
<WEBOBJECT NAME=ReturnToLastPageHyperlink>Return To Last
Page</WEBOBJECT>
<p />
</WEBOBJECT>
<WEBOBJECT NAME=ShouldReturnToURLConditional>
<WEBOBJECT NAME=ReturnToURLHyperlink>Return To Last Page</WEBOBJECT>
<p />
</WEBOBJECT>
<WEBOBJECT NAME=IsInternalConditional><WEBOBJECT NAME=InternalFooter>
</WEBOBJECT></WEBOBJECT>
<WEBOBJECT NAME=IsExternalConditional><WEBOBJECT NAME=ExternalFooter>
</WEBOBJECT></WEBOBJECT>
<WEBOBJECT NAME=ShouldShowLeftSideMenuConditional>
</div>
</WEBOBJECT>
</WEBOBJECT>
===============================================================================================
======================Pages in the app that use the
above======================================
<!-- <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml11/DTD/transitional.dtd" > -->
<html>
<WEBOBJECT NAME=CommonHeadTags>
<title>DEMO - Online Bill Payment</title>
Any other <head> tags you want to add or modify
</WEBOBJECT>
<WEBOBJECT NAME=InternalExternalPageContent>
This is where your page content would go for any particular
page...ie,
<body/> content
</WEBOBJECT>
</html>
===================================================================================
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]