Well Howard's other suggestion, with having jsps live within a T5 app might be a way to do it. You build a shell around your current app, move some of your boilerplate inclusions (header/footer stuff) into a layout component, and then make a custom component to drive your jsps. That would be a killer transition tool.

Christian.

On 9-Jun-08, at 15:30 , Lance Java wrote:

Bummer... I thought this might be the case.
If this was possible it would be an easy peasy way for people to slowly
migrate to a superior platform.

Thanks for your response.

2008/6/9 Howard Lewis Ship <[EMAIL PROTECTED]>:

This would be a daunting task.

Tapestry 5 components live within a specialized, managed
infrastructure.  It was never the intent to allow them to be used as
JSP tags. I've thought about going the other direction (mapping a JSP
tag as a Tapestry component automagically).  Tapestry components
expect to live inside a Tapestry page. All of these things are linked
together, which is why a T5 app can execute with almost no
configuration.

Tapestry components often cooperate with each other, for example, the
relationship between a Form component and an enclosed TextField
component. This form of communication is very dynamic and also hard to
map to the JSP space.

Finally, the code you provide for a component or page is actually only a very, very, very small part of the Tapestry application; not only is
there a large amount of machinery behind the scenes, but the code you
provide is instrumented heavily at runtime.


On Mon, Jun 9, 2008 at 7:17 AM, Lance Java <[EMAIL PROTECTED]>
wrote:
Hi, I'm a tapestry newbie and want to use tapestry5 for a new set of
pages.
There is a requirement that some of the new components can be re- used on some existing struts/JSP based pages. I was hoping that I could write a
jsp
tag library which would initialize t5 components, include their
javascript /
css and render the html inline.

Perhaps something like:

<%@ taglib uri="/WEB-INF/tapestry5" prefix="t5" %>
<t5:root>
 <t5:init component="grid" name="userGrid">
    <t5:param name="users" value="${users}" />
 </t5:init>
 <t5:init component="beaneditform" name="userForm">
    <t5:param name="id" value="form" />
    <t5:param name="object" value="${user}" />
 </t5:init>

 <html>
    <head>
       <!-- this will include any js or css required grid or
beaneditform
-->
       <t5:head />
    </head>

    <!-- reference to the t5:init above -->
    <t5:component name="userGrid">

    <!-- reference to the t5:init above -->
    <t5:component name="userForm" />
 </html>
</t5:root>
Can someone let me know if i'm barking mad or not?
If this is possible, what classes etc I should be looking at and what
potential issues I might have.


Thanks,
Lance.




--
Howard M. Lewis Ship

Creator Apache Tapestry and Apache HiveMind

---------------------------------------------------------------------
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]

Reply via email to