Accès non-propriétés via jsp elJSP EL et Scriptlets - Comment éviter de mélanger jstl et scriptlet vars
Dans le code ci-dessous, je dois accéder à une méthode qui n'est pas une propriété. J'ai besoin d'une variable c: foreach pour être visible aussi bien pour le test. Je traite du code de quelqu'un d'autre. Je ne suis pas particulièrement satisfait de la conception, mais c'est facile quand il s'agit du code de quelqu'un d'autre.
Je préférerais simplement définir les rôles visibles dans le contrôleur, mais toutes les données sont lues à partir d'un cache global à plusieurs endroits. La camelote ci-dessous représente le moins de lignes de code pour obtenir le comportement souhaité.
< c: foreach var = éléments "rôle" = "$ {} resource.value.rs" >
// n'ont pas accès au rôle dans le contexte de scriptlet
< c: si test = "<% role.isVisible (session.getAttribute ("AuthUser"))% >" >
</c: si > </c: foreach >
Une solution simple serait .. si je pouvais faire:
// ne peut pas appeler isVisible par el je ne crois pas
< c: if test = "$ {role.isVisible (session.authUser)} ">
mais je suis sûr que vous ne pouvez pas faire cela.
Je suis en train de réécrire pour éviter les scriptlets, mais si quelqu'un avait une solution rapide, je l'amuserais.
Merci.