Or if you are making your own "base page" or "base component" class,
it goes in the /base directory instead of /pages or /components

i.e. for my reports I have /base/reports/AbstractReportPage.java
and my implementations of it go in /pages/....../ReportABC.java

I have my user's ASO and some Inject annotations in the abstract class
(I think it could be concrete without making a difference), and
everything works well in the pages that extend it.  I have not tried
page render cycle annotations in my base classes yet, but I don't see
how it would be different.

If you are in fact making your own generic page, I would make sure you
don't call it anything similar to the T5 internals, just for your own
sanity. =)

Also, I think having those kinds of classes in /base protects those
classes from the black-magic T5 does with classes found under /pages,
/mixins and /components.





On 8/2/07, Howard Lewis Ship <[EMAIL PROTECTED]> wrote:
> You create components, not pages.  You don't extend from Page.  That's an
> internal Tapestry interface.  Please read the tutorial.
>
> On 8/2/07, Evan Rawson - Work <[EMAIL PROTECTED]> wrote:
> >
> > hello.
> >
> > i created a generic page which i want all of my other pages in my
> > application to extend. This page controls various methods which all of my
> > pages need to use. Event Listening methods (ie: onActivate, or any lifecycle
> > annotation) does not work. I have to manually call the method and activate
> > it on the extend page, not the root page which contains the method.
> >
> > I tried to manually implement the Page interface with the generic page
> > which extends all of my other pages
> >
> > public class genericPage implements Page {
> > .....
> > }
> >
> > i get these errors
> >
> >
> > Severity and Description Path Resource Location Creation Time Id
> > The type ProtectedPage must implement the inherited abstract method
> > Page.addLifecycleListener(PageLifecycleListener)
> > dma/src/main/java/com/americanadtrader/dma/services ProtectedPage.javaline 
> > 20 1186086487400 313088
> > The type ProtectedPage must implement the inherited abstract method
> > Page.attached() dma/src/main/java/com/americanadtrader/dma/services
> > ProtectedPage.java line 20 1186086487400 313095
> > The type ProtectedPage must implement the inherited abstract method
> > Page.createActionLink(ComponentPageElement, String, boolean, Object...)
> > dma/src/main/java/com/americanadtrader/dma/services ProtectedPage.javaline 
> > 20 1186086487400 313096
> > The type ProtectedPage must implement the inherited abstract method
> > Page.createPageLink(String, boolean, Object...)
> > dma/src/main/java/com/americanadtrader/dma/services ProtectedPage.javaline 
> > 20 1186086487400 313089
> > The type ProtectedPage must implement the inherited abstract method
> > Page.decrementDirtyCount()
> > dma/src/main/java/com/americanadtrader/dma/services ProtectedPage.javaline 
> > 20 1186086487400 313087
> > The type ProtectedPage must implement the inherited abstract method
> > Page.detached() dma/src/main/java/com/americanadtrader/dma/services
> > ProtectedPage.java line 20 1186086487400 313083
> > The type ProtectedPage must implement the inherited abstract method
> > Page.getComponentElementByNestedId(String)
> > dma/src/main/java/com/americanadtrader/dma/services ProtectedPage.javaline 
> > 20 1186086487400 313093
> > The type ProtectedPage must implement the inherited abstract method
> > Page.getFieldChange(ComponentPageElement, String)
> > dma/src/main/java/com/americanadtrader/dma/services ProtectedPage.javaline 
> > 20 1186086487400 313085
> > The type ProtectedPage must implement the inherited abstract method
> > Page.getLocale() dma/src/main/java/com/americanadtrader/dma/services
> > ProtectedPage.java line 20 1186086487400 313099
> > The type ProtectedPage must implement the inherited abstract method
> > Page.getLog() dma/src/main/java/com/americanadtrader/dma/services
> > ProtectedPage.java line 20 1186086487400 313090
> > The type ProtectedPage must implement the inherited abstract method
> > Page.getLogicalName() dma/src/main/java/com/americanadtrader/dma/services
> > ProtectedPage.java line 20 1186086487400 313094
> > The type ProtectedPage must implement the inherited abstract method
> > Page.getRootComponent()
> > dma/src/main/java/com/americanadtrader/dma/services ProtectedPage.javaline 
> > 20 1186086487400 313091
> > The type ProtectedPage must implement the inherited abstract method
> > Page.getRootElement() dma/src/main/java/com/americanadtrader/dma/services
> > ProtectedPage.java line 20 1186086487400 313092
> > The type ProtectedPage must implement the inherited abstract method
> > Page.incrementDirtyCount()
> > dma/src/main/java/com/americanadtrader/dma/services ProtectedPage.javaline 
> > 20 1186086487400 313097
> > The type ProtectedPage must implement the inherited abstract method
> > Page.loaded() dma/src/main/java/com/americanadtrader/dma/services
> > ProtectedPage.java line 20 1186086487400 313098
> > The type ProtectedPage must implement the inherited abstract method
> > Page.persistFieldChange(ComponentResources, String, Object)
> > dma/src/main/java/com/americanadtrader/dma/services ProtectedPage.javaline 
> > 20 1186086487400 313086
> > The type ProtectedPage must implement the inherited abstract method
> > Page.setRootElement(ComponentPageElement)
> > dma/src/main/java/com/americanadtrader/dma/services ProtectedPage.javaline 
> > 20 1186086487400 313084
> >
> >
> > thanks
> > ~evan
>
>
>
>
> --
> Howard M. Lewis Ship
> TWD Consulting, Inc.
> Independent J2EE / Open-Source Java Consultant
> Creator and PMC Chair, Apache Tapestry
> Creator, Apache HiveMind
>
> Professional Tapestry training, mentoring, support
> and project work.  http://howardlewisship.com
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to