Turns out its mutable fields that don't work. I was fooled because my tests mistakenly only attempted injected fields.
In any case, it is fixed in 5.3.3-rc-3. On Wed, Apr 11, 2012 at 9:20 PM, Steve Eynon <[email protected]> wrote: > Hello, > > Directly accessing instrumented fields (@Parameter etc...) from > subclasses does not work. This is fine, but I do wish T5 complained > bitterly when it finds a instrumented field marked as non-public. > > Olaf found similar problems here (TAP5-1860): > http://tapestry.1045711.n5.nabble.com/Protected-page-properties-confusion-td5607824.html > > We've come a cropper with this a couple of times when young'uns mark a > @Parameter field as protected and accesses it from a subclass. The > nasty gotcha being, that once the field is shadowed in DevMode, it > works fine! But then fails spectacularly in ProdMode with an NPE as > the actual field instance is never set! > > I know this is all related to TAP5-1801 and the T5.3.2 release but I'm > not really sure what it was supposed to address. If, as I suspect, we > shouldn't mark instrumented fields as protected could the > documentation be updated to say so? ( > http://tapestry.apache.org/component-classes.html#ComponentClasses-InstanceVariables > ) > > Cheers, > > Steve. > -- > Steve Eynon > ------------------------------- > "If at first you don't succeed, > so much for skydiving!" > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > -- Howard M. Lewis Ship Creator of Apache Tapestry The source for Tapestry training, mentoring and support. Contact me to learn how I can get you up and productive in Tapestry fast! (971) 678-5210 http://howardlewisship.com --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
