[ https://issues.apache.org/jira/browse/TAP5-2099?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15158978#comment-15158978 ]
Barry Books commented on TAP5-2099: ----------------------------------- It's true if you want the object passed to the symbol binding updated to the new value the patch does not do that but I don't think that's possible or desirable. The symbol binding object does not have access to the symbol providers objects since the expression passed to the binding is a String and is not mutable. If it did and that was implemented the next usage of the symbol ComponentParameterConstants.GRID_ROWS_PER_PAGE would return something other than 6 and I think that would be a bug. The symbol bindings should be invariant. The above code does allow setting the field for the current request which is what I wanted to do and what I think the Jira ticket is about. I'll update the Github project tonight using the grid as an example. > Update parameters bound to literal: or symbol: from a mixin > ----------------------------------------------------------- > > Key: TAP5-2099 > URL: https://issues.apache.org/jira/browse/TAP5-2099 > Project: Tapestry 5 > Issue Type: Improvement > Affects Versions: 5.3.6, 5.4 > Reporter: Lance > Labels: patch > Attachments: TAP52099-1.patch > > > Currently, I cannot update a component component parameter that is > initialized with a literal: or symbol: binding from a mixin. If I try to > @BindParameter the param and change it's value, I get a "Binding %s is > read-only" exception (originating from AbstractBinding). > I propose that literal and symbol bindings are sourced from a PerThreadValue > that can be updated by a mixin. > My original need for this was to create a "SinglePage" mixin for the Grid > component which would set the rowsPerPage parameter to Integer.MAX_VALUE. I > can't currently do this because by default, the parameter is a symbol: > binding. -- This message was sent by Atlassian JIRA (v6.3.4#6332)