The problem with your first method is that you are trying to pass a literal but the default parameter type is property.
Change it to: <t:layout title="'My Page'"> or <t:layout title="literal:My Page"> or change the defaultPrefix in your Parameter to literal @Parameter(defaultPrefix="literal") The problem with the second method is that you are passing a Block parameter and it's getting coerced into a String. Usually I use this for passing chunks of html into a component. Josh On 10/4/07, Jean-Philippe Steinmetz <[EMAIL PROTECTED]> wrote: > > Hello All, > > > > I have a layout component that I use to wrap all my pages with the same > HTML > header/footer. I would like to be able to set the page name with this > component. Ideally I would like it to look like: > > > > <t:layout title="MyPage" > xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd"> > > Page content goes here > > </t:layout> > > > > In my Layout class I have added > > > > @Parameter("") > > private String _title; > > > > public String getTitle() > > { > > return _title; > > } > > > > When I first set my template as described above I got an error because the > name was the same as a class name and it was unable to convert the type. > So > then I changed it to > > > > <t:layout xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd"> > > <t:parameter name="title">MyPage</t:parameter> > > Page content goes here > > </t:layout> > > > > This at least renders a page, but the title being displayed in the browser > shows up as > > > > [EMAIL PROTECTED] > > > > instead of displaying MyPage. What am I doing wrong? Thanks in advance. > > > > Jean-Philippe Steinmetz > > -- -- TheDailyTube.com. Sign up and get the best new videos on the internet delivered fresh to your inbox.