RE: T4: Newbie's questions
Thanks, I'll look into the example. -Original Message- From: Yunhua Sang [mailto:[EMAIL PROTECTED] Sent: Thursday, January 10, 2008 4:35 PM To: Tapestry users Subject: Re: T4: Newbie's questions Hi Xiahong, For Layout management, there is a example in Workbench demo: src\Workbench\src\context\WEB-INF\Border.html You may have better sense after you take a look of this page. Cheers, Yunhua On Jan 10, 2008 2:26 PM, Ulrich Stärk <[EMAIL PROTECTED]> wrote: > Zheng, Xiahong schrieb: > > Hi, > > > > I am exploring Tapestry (currently looking at 4.1.4 snapshot). So far, > > the experience has been very positive. I was able to convert a Struts > > based application to Tapestry4 in just a couple days. However, I still > > need answer to the following questions, > > > > 1) Layout management: I couldn't find a documented solution to replace > > tiles used by the old application. > > I'm no Struts expert but AFAICR tiles are just some kind of reusable > templates. In Tapestry every component you write can be compared with a > tile. Just write your component (with or without a template) and reuse > it anywhere in your projects. > To manage a common layout on all pages you write a so called Border > component which contains layout common to all pages and that contains > the RenderBody component. If you then wrap your page's components within > your Border component, the content of your Border component is > rendered around them. Look here for an example: > http://tapestry.apache.org/tapestry4.1/components/general/renderbody.html > > > > > 2) Dynamic attribute value generation: Something like the following you > > can do with JSP > > > > > > > >How do I achieve this in Tapestry? Is there a component I can use to > > generate dynamic content as value for any arbitrary attribute of an HTML > > element? > > In Tapestry you do that with some OGNL expression. Your example would be > something like which > would label your button according to a call of getPageProperty() on your > page class. > > Cheers, > > Uli > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: T4: Newbie's questions
I think that won't work for double quotes, should you need that. That was the issue I had originally, I think. Norman Franke ASD, Inc. On Jan 10, 2008, at 4:41 PM, Zheng, Xiahong wrote: It works!!! Thanks a bunch. -Original Message- From: Jesse Kuhnert [mailto:[EMAIL PROTECTED] Sent: Thursday, January 10, 2008 4:33 PM To: Tapestry users Subject: Re: T4: Newbie's questions \' On Jan 10, 2008 4:29 PM, Zheng, Xiahong <[EMAIL PROTECTED]> wrote: How to escape single quote inside my string constant? -Original Message- From: Jesse Kuhnert [mailto:[EMAIL PROTECTED] Sent: Thursday, January 10, 2008 4:19 PM To: Tapestry users Subject: Re: T4: Newbie's questions page.user.name" /> On Jan 10, 2008 3:52 PM, Zheng, Xiahong <[EMAIL PROTECTED]> wrote: I will try to read OGNL. For now, I did just as you suggested; created a page method to return the entire string. The down side is: I have JavaScript in my Page class which is vulnerable to UI changes (form element id changes, i.e.). -Original Message- From: Norman Franke [mailto:[EMAIL PROTECTED] Sent: Thursday, January 10, 2008 3:38 PM To: Tapestry users Subject: Re: T4: Newbie's questions On Jan 10, 2008, at 3:04 PM, Zheng, Xiahong wrote: Thanks Norman and Ulrich for your quick response. Now I am getting closer. In my scenario, I want to append a dynamic content to the "onclick" attribute, not to replace it entirely. See below, How can I append OGNL expression to the "onclick" attribute? You can have a page method return the entire string, or read up on OGNL. It can do string concatenation. -Norman - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Jesse Kuhnert Tapestry / OGNL / Dojo team member/developer Open source based consulting work centered around dojo/tapestry/tacos/hivemind. http://blog.opencomponentry.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Jesse Kuhnert Tapestry / OGNL / Dojo team member/developer Open source based consulting work centered around dojo/tapestry/tacos/hivemind. http://blog.opencomponentry.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: T4: Newbie's questions
It works!!! Thanks a bunch. -Original Message- From: Jesse Kuhnert [mailto:[EMAIL PROTECTED] Sent: Thursday, January 10, 2008 4:33 PM To: Tapestry users Subject: Re: T4: Newbie's questions \' On Jan 10, 2008 4:29 PM, Zheng, Xiahong <[EMAIL PROTECTED]> wrote: > How to escape single quote inside my string constant? > > > -Original Message- > From: Jesse Kuhnert [mailto:[EMAIL PROTECTED] > Sent: Thursday, January 10, 2008 4:19 PM > To: Tapestry users > Subject: Re: T4: Newbie's questions > > /> > > On Jan 10, 2008 3:52 PM, Zheng, Xiahong <[EMAIL PROTECTED]> wrote: > > I will try to read OGNL. For now, I did just as you suggested; created > a > > page method to return the entire string. The down side is: I have > > JavaScript in my Page class which is vulnerable to UI changes (form > > element id changes, i.e.). > > > > -Original Message- > > From: Norman Franke [mailto:[EMAIL PROTECTED] > > Sent: Thursday, January 10, 2008 3:38 PM > > To: Tapestry users > > Subject: Re: T4: Newbie's questions > > > > > > On Jan 10, 2008, at 3:04 PM, Zheng, Xiahong wrote: > > > > > Thanks Norman and Ulrich for your quick response. Now I am getting > > > closer. In my scenario, I want to append a dynamic content to the > > > "onclick" attribute, not to replace it entirely. See below, > > > > > > > > onclick="document.getElementById('positionId').value=" > > > type="submit" /> > > > > > > How can I append OGNL expression to the "onclick" attribute? > > > > You can have a page method return the entire string, or read up on > > OGNL. It can do string concatenation. > > > > -Norman > > > > > > > > > > - > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > - > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > -- > Jesse Kuhnert > Tapestry / OGNL / Dojo team member/developer > > Open source based consulting work centered around > dojo/tapestry/tacos/hivemind. http://blog.opencomponentry.com > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > -- Jesse Kuhnert Tapestry / OGNL / Dojo team member/developer Open source based consulting work centered around dojo/tapestry/tacos/hivemind. http://blog.opencomponentry.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: T4: Newbie's questions
Hi Xiahong, For Layout management, there is a example in Workbench demo: src\Workbench\src\context\WEB-INF\Border.html You may have better sense after you take a look of this page. Cheers, Yunhua On Jan 10, 2008 2:26 PM, Ulrich Stärk <[EMAIL PROTECTED]> wrote: > Zheng, Xiahong schrieb: > > Hi, > > > > I am exploring Tapestry (currently looking at 4.1.4 snapshot). So far, > > the experience has been very positive. I was able to convert a Struts > > based application to Tapestry4 in just a couple days. However, I still > > need answer to the following questions, > > > > 1) Layout management: I couldn't find a documented solution to replace > > tiles used by the old application. > > I'm no Struts expert but AFAICR tiles are just some kind of reusable > templates. In Tapestry every component you write can be compared with a > tile. Just write your component (with or without a template) and reuse > it anywhere in your projects. > To manage a common layout on all pages you write a so called Border > component which contains layout common to all pages and that contains > the RenderBody component. If you then wrap your page's components within > your Border component, the content of your Border component is > rendered around them. Look here for an example: > http://tapestry.apache.org/tapestry4.1/components/general/renderbody.html > > > > > 2) Dynamic attribute value generation: Something like the following you > > can do with JSP > > > > > > > >How do I achieve this in Tapestry? Is there a component I can use to > > generate dynamic content as value for any arbitrary attribute of an HTML > > element? > > In Tapestry you do that with some OGNL expression. Your example would be > something like which > would label your button according to a call of getPageProperty() on your > page class. > > Cheers, > > Uli > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > >
Re: T4: Newbie's questions
\' On Jan 10, 2008 4:29 PM, Zheng, Xiahong <[EMAIL PROTECTED]> wrote: > How to escape single quote inside my string constant? > > > -Original Message- > From: Jesse Kuhnert [mailto:[EMAIL PROTECTED] > Sent: Thursday, January 10, 2008 4:19 PM > To: Tapestry users > Subject: Re: T4: Newbie's questions > > /> > > On Jan 10, 2008 3:52 PM, Zheng, Xiahong <[EMAIL PROTECTED]> wrote: > > I will try to read OGNL. For now, I did just as you suggested; created > a > > page method to return the entire string. The down side is: I have > > JavaScript in my Page class which is vulnerable to UI changes (form > > element id changes, i.e.). > > > > -Original Message- > > From: Norman Franke [mailto:[EMAIL PROTECTED] > > Sent: Thursday, January 10, 2008 3:38 PM > > To: Tapestry users > > Subject: Re: T4: Newbie's questions > > > > > > On Jan 10, 2008, at 3:04 PM, Zheng, Xiahong wrote: > > > > > Thanks Norman and Ulrich for your quick response. Now I am getting > > > closer. In my scenario, I want to append a dynamic content to the > > > "onclick" attribute, not to replace it entirely. See below, > > > > > > > > onclick="document.getElementById('positionId').value=" > > > type="submit" /> > > > > > > How can I append OGNL expression to the "onclick" attribute? > > > > You can have a page method return the entire string, or read up on > > OGNL. It can do string concatenation. > > > > -Norman > > > > > > > > > > - > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > - > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > -- > Jesse Kuhnert > Tapestry / OGNL / Dojo team member/developer > > Open source based consulting work centered around > dojo/tapestry/tacos/hivemind. http://blog.opencomponentry.com > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > -- Jesse Kuhnert Tapestry / OGNL / Dojo team member/developer Open source based consulting work centered around dojo/tapestry/tacos/hivemind. http://blog.opencomponentry.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: T4: Newbie's questions
Which doesn't work if you want to include a single quote in the string, as he seems to want. You can get around this by defining the component in the .page file and specifying that property like this: value="components.table.columnValue" /> "return escape(hintAttributesTxt(1,this,'"+attrList +"'))" Norman Franke ASD, Inc. On Jan 10, 2008, at 4:19 PM, Jesse Kuhnert wrote: On Jan 10, 2008 3:52 PM, Zheng, Xiahong <[EMAIL PROTECTED]> wrote: I will try to read OGNL. For now, I did just as you suggested; created a page method to return the entire string. The down side is: I have JavaScript in my Page class which is vulnerable to UI changes (form element id changes, i.e.). -Original Message- From: Norman Franke [mailto:[EMAIL PROTECTED] Sent: Thursday, January 10, 2008 3:38 PM To: Tapestry users Subject: Re: T4: Newbie's questions On Jan 10, 2008, at 3:04 PM, Zheng, Xiahong wrote: Thanks Norman and Ulrich for your quick response. Now I am getting closer. In my scenario, I want to append a dynamic content to the "onclick" attribute, not to replace it entirely. See below, How can I append OGNL expression to the "onclick" attribute? You can have a page method return the entire string, or read up on OGNL. It can do string concatenation. -Norman - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Jesse Kuhnert Tapestry / OGNL / Dojo team member/developer Open source based consulting work centered around dojo/tapestry/tacos/hivemind. http://blog.opencomponentry.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: T4: Newbie's questions
How to escape single quote inside my string constant? -Original Message- From: Jesse Kuhnert [mailto:[EMAIL PROTECTED] Sent: Thursday, January 10, 2008 4:19 PM To: Tapestry users Subject: Re: T4: Newbie's questions On Jan 10, 2008 3:52 PM, Zheng, Xiahong <[EMAIL PROTECTED]> wrote: > I will try to read OGNL. For now, I did just as you suggested; created a > page method to return the entire string. The down side is: I have > JavaScript in my Page class which is vulnerable to UI changes (form > element id changes, i.e.). > > -Original Message- > From: Norman Franke [mailto:[EMAIL PROTECTED] > Sent: Thursday, January 10, 2008 3:38 PM > To: Tapestry users > Subject: Re: T4: Newbie's questions > > > On Jan 10, 2008, at 3:04 PM, Zheng, Xiahong wrote: > > > Thanks Norman and Ulrich for your quick response. Now I am getting > > closer. In my scenario, I want to append a dynamic content to the > > "onclick" attribute, not to replace it entirely. See below, > > > > > onclick="document.getElementById('positionId').value=" > > type="submit" /> > > > > How can I append OGNL expression to the "onclick" attribute? > > You can have a page method return the entire string, or read up on > OGNL. It can do string concatenation. > > -Norman > > > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > -- Jesse Kuhnert Tapestry / OGNL / Dojo team member/developer Open source based consulting work centered around dojo/tapestry/tacos/hivemind. http://blog.opencomponentry.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: T4: Newbie's questions
On Jan 10, 2008 3:52 PM, Zheng, Xiahong <[EMAIL PROTECTED]> wrote: > I will try to read OGNL. For now, I did just as you suggested; created a > page method to return the entire string. The down side is: I have > JavaScript in my Page class which is vulnerable to UI changes (form > element id changes, i.e.). > > -Original Message- > From: Norman Franke [mailto:[EMAIL PROTECTED] > Sent: Thursday, January 10, 2008 3:38 PM > To: Tapestry users > Subject: Re: T4: Newbie's questions > > > On Jan 10, 2008, at 3:04 PM, Zheng, Xiahong wrote: > > > Thanks Norman and Ulrich for your quick response. Now I am getting > > closer. In my scenario, I want to append a dynamic content to the > > "onclick" attribute, not to replace it entirely. See below, > > > > > onclick="document.getElementById('positionId').value=" > > type="submit" /> > > > > How can I append OGNL expression to the "onclick" attribute? > > You can have a page method return the entire string, or read up on > OGNL. It can do string concatenation. > > -Norman > > > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > -- Jesse Kuhnert Tapestry / OGNL / Dojo team member/developer Open source based consulting work centered around dojo/tapestry/tacos/hivemind. http://blog.opencomponentry.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: T4: Newbie's questions
I will try to read OGNL. For now, I did just as you suggested; created a page method to return the entire string. The down side is: I have JavaScript in my Page class which is vulnerable to UI changes (form element id changes, i.e.). -Original Message- From: Norman Franke [mailto:[EMAIL PROTECTED] Sent: Thursday, January 10, 2008 3:38 PM To: Tapestry users Subject: Re: T4: Newbie's questions On Jan 10, 2008, at 3:04 PM, Zheng, Xiahong wrote: > Thanks Norman and Ulrich for your quick response. Now I am getting > closer. In my scenario, I want to append a dynamic content to the > "onclick" attribute, not to replace it entirely. See below, > > onclick="document.getElementById('positionId').value=" > type="submit" /> > > How can I append OGNL expression to the "onclick" attribute? You can have a page method return the entire string, or read up on OGNL. It can do string concatenation. -Norman - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: T4: Newbie's questions
On Jan 10, 2008, at 3:04 PM, Zheng, Xiahong wrote: Thanks Norman and Ulrich for your quick response. Now I am getting closer. In my scenario, I want to append a dynamic content to the "onclick" attribute, not to replace it entirely. See below, onclick="document.getElementById('positionId').value=" type="submit" /> How can I append OGNL expression to the "onclick" attribute? You can have a page method return the entire string, or read up on OGNL. It can do string concatenation. -Norman - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: T4: Newbie's questions
On 1/10/08, Ulrich Stärk <[EMAIL PROTECTED]> wrote: > > Zheng, Xiahong schrieb: > > 1) Layout management: I couldn't find a documented solution to replace > > tiles used by the old application. > I'm no Struts expert but AFAICR tiles are just some kind of reusable > templates. In Tapestry every component you write can be compared with a > tile. Just write your component (with or without a template) and reuse > it anywhere in your projects. > To manage a common layout on all pages you write a so called Border > component which contains layout common to all pages and that contains > the RenderBody component. If you then wrap your page's components within > your Border component, the content of your Border component is > rendered around them. Look here for an example: > http://tapestry.apache.org/tapestry4.1/components/general/renderbody.html One thing that may be complicating things for people with Tiles experience is to wrap their heads around the fact that you really aren't managing page snippets, but complete page templates in Tapestry, in other words a Tapestry page template combines both a Tiles definition and an individiual Tiles page snippet into one; an approach similar to Facelets. So a Tapestry page typically always starts with a Border component of your choice (equal to a Tiles layout definition), containing the body of the page, which the Border component (template) then injects to an appropriate place with the help of a Body component to produce the rendered page. What you loose compared to Tiles is that you have to declare a Border for each page, but you get it back with the additional flexibility of being able to easily use and switch to different Borders and the page itself documenting which layout it's currently using. Kalle > > > 2) Dynamic attribute value generation: Something like the following you > > can do with JSP > > > > > > > >How do I achieve this in Tapestry? Is there a component I can use to > > generate dynamic content as value for any arbitrary attribute of an HTML > > element? > > In Tapestry you do that with some OGNL expression. Your example would be > something like which > would label your button according to a call of getPageProperty() on your > page class. > > Cheers, > > Uli > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > >
RE: T4: Newbie's questions
Hi Marcus, Thanks for the suggestion. Evaluating T5 is next item on my list. The reason I decided to look at T4 first is it is production release whereas T5's release schedule is unclear at this moment. -Original Message- From: Marcus [mailto:[EMAIL PROTECTED] Sent: Thursday, January 10, 2008 3:17 PM To: Tapestry users Subject: Re: T4: Newbie's questions Hi Zheng, Since you are newbie, I think you should try T5. I'm a Tapestry user since T3. T5 is more intuitive and easy to learn, in my opinion. Marcus - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: T4: Newbie's questions
Hi Zheng, Since you are newbie, I think you should try T5. I'm a Tapestry user since T3. T5 is more intuitive and easy to learn, in my opinion. Marcus
RE: T4: Newbie's questions
Thanks Norman and Ulrich for your quick response. Now I am getting closer. In my scenario, I want to append a dynamic content to the "onclick" attribute, not to replace it entirely. See below, How can I append OGNL expression to the "onclick" attribute? -Original Message- From: Norman Franke [mailto:[EMAIL PROTECTED] Sent: Thursday, January 10, 2008 2:15 PM To: Tapestry users Subject: Re: T4: Newbie's questions On Jan 10, 2008, at 2:05 PM, Zheng, Xiahong wrote: > 1) Layout management: I couldn't find a documented solution to replace > tiles used by the old application. Not sure on that one, I don't believe there really is anything dealing with layout other than a table. > 2) Dynamic attribute value generation: Something like the following > you > can do with JSP > > > >How do I achieve this in Tapestry? Is there a component I can > use to > generate dynamic content as value for any arbitrary attribute of an > HTML > element? The Any component is what you want, I believe: -Norman - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: T4: Newbie's questions
Zheng, Xiahong schrieb: Hi, I am exploring Tapestry (currently looking at 4.1.4 snapshot). So far, the experience has been very positive. I was able to convert a Struts based application to Tapestry4 in just a couple days. However, I still need answer to the following questions, 1) Layout management: I couldn't find a documented solution to replace tiles used by the old application. I'm no Struts expert but AFAICR tiles are just some kind of reusable templates. In Tapestry every component you write can be compared with a tile. Just write your component (with or without a template) and reuse it anywhere in your projects. To manage a common layout on all pages you write a so called Border component which contains layout common to all pages and that contains the RenderBody component. If you then wrap your page's components within your Border component, the content of your Border component is rendered around them. Look here for an example: http://tapestry.apache.org/tapestry4.1/components/general/renderbody.html 2) Dynamic attribute value generation: Something like the following you can do with JSP How do I achieve this in Tapestry? Is there a component I can use to generate dynamic content as value for any arbitrary attribute of an HTML element? In Tapestry you do that with some OGNL expression. Your example would be something like which would label your button according to a call of getPageProperty() on your page class. Cheers, Uli - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: T4: Newbie's questions
On Jan 10, 2008, at 2:05 PM, Zheng, Xiahong wrote: 1) Layout management: I couldn't find a documented solution to replace tiles used by the old application. Not sure on that one, I don't believe there really is anything dealing with layout other than a table. 2) Dynamic attribute value generation: Something like the following you can do with JSP How do I achieve this in Tapestry? Is there a component I can use to generate dynamic content as value for any arbitrary attribute of an HTML element? The Any component is what you want, I believe: -Norman - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]