I am really wonderung why an abstract class cannot be used as component (page) class.

The reason why I am wondering:

Let's suppose I have a few pages with some shared functionality. I'd like to create a base class:

public abstract class BasePage{

    @Property
    private Object someProp;

    public abstract Object getSomeProp();
    public void setSomeProp(Object someProp)

}


and a few implementing classes like this one:


public abstract PageOne extends BasePage{
    ...
}

I need these getter and setter for my property. I cannot write them myself, because T5 then complains. I cannot include the abstract definition, because component classes cannot be abstract.

I do not want to define the property in each subclass. (Makes subclassing useless in the first place). And I certainly don't want to generate getters and setters which do not accord to the Java Bean naming conventions, just to be able to access the property in my subclasses.

Couldn't tapestry allow
   - allow abstract classes as component classes
- allow the declaration of abstracrt getters and setters for the properties (like T4 and T3)
Or at least:
- allow me to write getters and setters myself. If they exist, T5 should not attempt to recreate
     them when enhancing component classes.


What do you think?


Andy




Andy


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org

Reply via email to