Hi,

I'm using page/component inheritence and I noticed a pb since I migrated an
app from Tapestry 5.1 to 5.2.

I try to render 'ComponentB' that extends 'ComponentA' (using extension
points). Both have a property with same name but with a different type
('EntityB' extends 'EntityA'). The error message says that 'EntityA' does
not contain a property named 'bla'. It's true but it is supposed to get
'EntityB' which contains the 'bla' property.

Actually, the problem comes from the 'PropertyWorker' and especially from
'getOrCreateMethod()' method : it is supposed to "create" a getter on a
property but, instead, it "gets" it. 

The issue is that 'getOrCreateMethod()' does not check the return type (see
method 'match()' in 'InternalClassTransformationImpl'). Indeed, there is a
'TODO' comment about this.

Everything works fine in Tapestry 5.1.

For 5.2, the workaround is to not use the @Property annotation but the issue
remains for workers that use the 'getOrCreateMethod()' method in
page/component inheritence context.

Is it scheduled to check also the return type ? Do I fill a jira ?

Nourredine.

-- 
View this message in context: 
http://tapestry.1045711.n5.nabble.com/Pb-in-getOrCreateMethod-tp3403357p3403357.html
Sent from the Tapestry - User mailing list archive at Nabble.com.

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

Reply via email to