Hi, tapestry 5 is great and it is fantastic how easy it is to write new components for tapestry.
One problem we have though is that using injected variables at times breaks the application in unpredictable ways. A typical example is as follows: Getting some information from a wrapping component (we are transforming our internal report structure to HTML using Tapestry components here) @Parameter(value = "componentResources.container") private ReportDisplayInterface reportInterface_; Having a private variable private ReportData data_; which is initialised in @SetupRender void setupRender() { data_ = reportInterface_.getData(); .... So far so good and this works fine. But we have need to make modifications to data_ as we progress with the generation of the page. Frequently calls like data_.someMethod(); will lead to a ClassNotFound exceptions - as the class could not be transformed. (Previously I used to get an ArrayIndexOutOfBounds exception out of javaassist, but with the latest snapshots that has gone away). Frequently this can be solved by moving the call into a method, so turning this into // data_.someMethod(); myUnnecessaryMethod(data_); void myUnnecessaryMethod(ReportData data) { data.someMethod(); } This can be quite frustrating, as it leads to long sessions of commenting out one line after the other to find the offending line of code. So are there any guidelines as to what can be done with fields that are linked through to properties in other classes? Are these bugs or am I just trying to do something I shouldn't? Are there any standard templates for usages that work? I'm using 5.0.10-SNAPSHOT and have updated today, but this has been a problem since 5.0.5. Cheers, Adriaan