You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by "Howard M. Lewis Ship (JIRA)" <de...@tapestry.apache.org> on 2007/06/24 17:31:26 UTC
[jira] Updated: (TAPESTRY-1583) The "block:" binding prefix may
only reference blocks that appear before the reference in the template, an
error occurs if the block is defined later in the template
[ https://issues.apache.org/jira/browse/TAPESTRY-1583?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Howard M. Lewis Ship updated TAPESTRY-1583:
-------------------------------------------
Summary: The "block:" binding prefix may only reference blocks that appear before the reference in the template, an error occurs if the block is defined later in the template (was: Cannot Pass Blocks to Layout Components)
> The "block:" binding prefix may only reference blocks that appear before the reference in the template, an error occurs if the block is defined later in the template
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: TAPESTRY-1583
> URL: https://issues.apache.org/jira/browse/TAPESTRY-1583
> Project: Tapestry
> Issue Type: Bug
> Affects Versions: 5.0.4
> Reporter: Jeremy F. Kassis
> Assignee: Howard M. Lewis Ship
> Fix For: 5.0.5
>
>
> As per http://tapestry.apache.org/tapestry5/tapestry-core/guide/templates.html, the template of a page that calls a layout component must look like this:
> <t:layout xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd">
> My Page Specific Content
> </t:layout>
> The layout component looks like this:
> <html xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd">
> <head>
> <title>My Tapestry Application</title>
> </head>
> <body>
> <t:body/>
> </body>
> </html>
> If I want a more sophisticated layout that renders blocks passed as parameters instead of just a body, i'd be tempted to try this:
> <t:layout xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd" block1="block:block1" block2="block:block2">
> <t:block id="block1">My Page Specific Content for Block 1</t:block>
> <t:block id="block2">My Page Specific Content for Block 2</t:block>
> </t:layout>
> But tapestry can't bind block1 and block2, because they appear in the template after the binding point.
> This solution works, but produces an extra <html> tag in the output document:
> <html xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd">
> <t:block id="block1">My Page Specific Content for Block 1</t:block>
> <t:block id="block2">My Page Specific Content for Block 2</t:block>
> <t:layout block1="block:block1" block2="block:block2"></t:layout>
> </html>
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org