I was working on custom tag libraries and I was confused how the <required>
and <rtexprvalue>
tags are used in the TLD file to define a custom tag attribute.
required
quite simply implies what it says. The attribute is required or mandatory.
rtexprvalue
means Runtime Expression Value. It means the attribute can support scriptlet values.
elexprvalue
means it can support EL (expression language) values.
So, if you have requiredattr
defined as both required=true
and rtexprvalue=true
and elattribute
is defined as elexprvalue=true
, you can write as follows:
<myprefix:mytag requiredattr="<%=baz.getId()%>" elattribute="${foo.bar}"/>