Je travaillais sur des bibliothèques de balises personnalisées et je ne savais pas comment le <required>
et <rtexprvalue>
les balises sont utilisées dans le fichier TLD pour définir un attribut de balise personnalisé.
required
implique tout simplement ce qu'il dit. L'attribut est obligatoire ou obligatoire.
rtexprvalue
signifie valeur d'expression d'exécution. Cela signifie que l'attribut peut prendre en charge les valeurs de scriptlet.
elexprvalue
signifie qu'il peut prendre en charge les valeurs EL (langage d'expression).
Donc, si vous avez requiredattr
défini comme les deux required=true
et rtexprvalue=true
et elattribute
est défini comme elexprvalue=true
, vous pouvez écrire comme suit:
<myprefix:mytag requiredattr="<%=baz.getId()%>" elattribute="${foo.bar}"/>
Le <rtexprvalue>
L'élément défini dans un TLD capture le comportement dynamique d'un attribut. La valeur peut être vraie ou fausse. Une fausse valeur dans la colonne dynamique signifie que seule une valeur de chaîne statique peut être spécifiée pour l'attribut. Une valeur vraie signifie qu'une valeur d'attribut au moment de la demande peut être spécifiée. Comme défini dans la spécification JSP, une "valeur d'attribut au moment de la demande" peut être soit une Java, une expression EL, soit une valeur définie par un <jsp:attribute>
.
Le <required>
L'élément définit si l'attribut d'emboîtement est obligatoire ou facultatif. S'il n'est pas présent, la valeur par défaut est "false", c'est-à-dire que l'attribut est facultatif.