Как использовать переменную Scriptlet в атрибуте тега Struts?

listBean уже заполнен данными, это то, чего я хочу добиться:

<html:checkbox name="listBean" 
        property="checked" indexed="true" 
        disabled="listBean[i].disabled" />

это то, что я пробовал:

    <bean:define id="disabledVal" name="listBean" property="disabled"/>
    <html:checkbox name="listBean" 
    property="checked" indexed="true" 
    disabled="<%=disabledVal%>" />

этот код выдает мне ошибку jsp:

BWEB004062: Невозможно скомпилировать класс для JSP: JBWEB004060: Произошла ошибка в строке ###: 119 в файле jsp: .jsp Метод setDisabled(boolean) в типе BaseHandlerTag неприменим для аргументов (Object) 116: codeFonctionnalite ="‹%= NAME %>"> 117: 118: 119: 122: JBWEB004060: Произошла ошибка в строке: 136 в файле jsp: .jsp Метод setDisabled(boolean) в типе BaseHandlerTag неприменим для аргументов (Объект) 133: 135: 136: 138: 139: JBWEB004211: Stacktrace: '**


person ZINE Mahmoud    schedule 27.11.2019    source источник
comment
Вы не знаете. Используйте EL вместо скриптлета: disabled=${disabledVal} /›   -  person Alan Hay    schedule 27.11.2019
comment
спасибо, это сработало с EL. опубликуйте свой комментарий как ответ   -  person ZINE Mahmoud    schedule 28.11.2019


Ответы (1)


используя EL Вместо того, чтобы скриптлет работал нормально, используйте этот ${disabledVal} , а не <%=disabledVal%> :

<bean:define id="disabledVal" name="listBean" property="disabled"/>
<html:checkbox name="listBean" property="checked" indexed="true" 
disabled="${disabledVal}" />
person ZINE Mahmoud    schedule 29.11.2019