Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
5.3
-
None
Description
In our Tapestry 5 library (exanpe-t5-lib), we provide some mixins containing some parameters declared as "required=true" AND with a default value.
These parameters are required for the operation of the mixin.
For example, in a Dialog mixin, we have :
@Parameter(value = "confirm", required = true, allowNull = false, defaultPrefix = BindingConstants.LITERAL)
private DialogRenderModeEnum renderMode;
If this required parameter is not explicity bound in the TML :
- In 5.2.6, everything is ok : the default value is used
- In 5.3-beta-5, we get the following Exception :
Parameter(s) 'Dialog.renderMode' are required for org.apache.tapestry5.corelib.components.ActionLink, but have not been bound.
The TML example looks like this :
<t:actionlink t:id="link1" t:mixins="exanpe/dialog">link1</t:actionlink>
With a simple type for mixin parameter (Integer or String), the same error occurs.
This behavior is only for mixins, not for components.
A simplified project that duplicates the issue has been attached : the mixin Emphasis used into Index.tml is ok in 5.2.6 and ko in 5.3.