Just a minor thing I stumbled over. When I have a property like this with an automatically created getter in a domain object:
private Boolean enabled; public Boolean isEnabled() { ... } Tapestry says: Render queue error in BeginRender[persons/PersonDetails:enabled]: Failure reading parameter 'value' of component persons/PersonDetails:enabled: Expression editPerson.enabled for class org.example.myapp.pages.persons.PersonDetails is write-only. I have to rename this to public Boolean getEnabled() { ... } and everything is fine. This is really a very minor nuisance but could be an improvement in a future version (for booleans recognize both "get" and "is" style getters).