Ainsi, selon mon livre de référence JSP, ainsi que tous les autres références que je peux trouver sur le web, je suis censé être capable de faire quelque chose comme:Comment faire pour que les attributs dynamiques fonctionnent dans les fichiers de balises JSP?
<%@ tag dynamic-attributes="dynamicAttributesVar" %>
et puis quand quelqu'un utilise un attribut Je ne définissaient pas dans une directive d'attribut, je devrais être en mesure d'accéder à cet attribut de la carte « de dynamicAttributesVar »:
<%= dynamicAttributesVar.get("someUnexpectedAttribute") %>
Cependant, cela ne fonctionne pas, du tout; Je viens d'obtenir une erreur "dynamicAttributesVar ne peut pas être résolue" quand j'essaye.
Maintenant, j'ai découvert (en regardant la classe Java généré pour l'étiquette) que je peux « pirater » un des attributs dynamiques travail variable en faisant:
<% Map dynamicAttributesVar = _jspx_dynamic_attrs; %>
Maintenant que bidouille ne fonctionne pas à moins que j'utilise aussi le paramètre dynamic-attributes sur ma directive tag, il semble donc que le paramètre fasse quelque chose.
Mais ce que je veux savoir est, comment puis-je le faire faire ce qu'il fait pour tous les autres utilisateurs JSP là-bas?
Ah, ça fait tellement plus de sens! Votre suggestion a fonctionné, avec une légère modification (j'ai dû utiliser jspContext.getAttribute au lieu de pageContext.get). Merci beaucoup – machineghost
Ah, je vais mettre à jour la réponse pour ça. Cela fait un moment que j'en ai écrit un. – araqnid