Parameters with defined with a default-value counted as "invariant"
-------------------------------------------------------------------
Key: TAPESTRY-1682
URL: https://issues.apache.org/jira/browse/TAPESTRY-1682
Project: Tapestry
Issue Type: Bug
Components: tapestry-core
Affects Versions: 4.1.2
Reporter: Martino Piccinato
Even though I found this problem with Dialog component it seems to affect any
similar component parameter, that is an optional component parameters with a
constant default value, take as an example Dialog:
<parameter name="hidden" default-value="true" />
Unless the optional parameter is configured with a ognl method binding the
parameter itself is somehow regarded as "Invariant" by ExpressionBinding class
that will throw a ReadOnlyBindingException when trying to use a setter on it.
In particular, for Dialog component this mean to fail everytime the component
is show()/hide() as setHidden has to be called to set the actual status for the
component.
There seems to be some kind of confusion between the component parameter method
and the binding method/default value here when creating the binding. In my
opinion a "default-value" should be just a default value if the parameter is
configured/initialized but this shouldn't prevent to use setters and getters on
the parameter after the component is created. And this is the same thing that
thought the creator of Dialog component I think :-)
The way to repeat this is very simple: just use the Dialog component anywhere
without using the hidden parameter and using hide() or show() at some time.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]