RE: T4: Newbie's questions

2008-01-10 Thread Zheng, Xiahong
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

2008-01-10 Thread Norman Franke
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

2008-01-10 Thread Zheng, Xiahong
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

2008-01-10 Thread Yunhua Sang
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

2008-01-10 Thread Jesse Kuhnert
\'

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

2008-01-10 Thread Norman Franke
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

2008-01-10 Thread Zheng, Xiahong
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

2008-01-10 Thread Jesse Kuhnert


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

2008-01-10 Thread Zheng, Xiahong
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

2008-01-10 Thread Norman Franke

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

2008-01-10 Thread Kalle Korhonen
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

2008-01-10 Thread Zheng, Xiahong
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

2008-01-10 Thread Marcus
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

2008-01-10 Thread Zheng, Xiahong
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

2008-01-10 Thread Ulrich Stärk

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

2008-01-10 Thread Norman Franke

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]