Не удается правильно связать данные в jsp

Я пытаюсь связать пользовательский ввод с флажками. Если проверка отмечена, переменная должна быть истинной. В противном случае ложь. В моем случае, когда пользователь установил флажок, значение переменной равно true (как и ожидалось), но когда пользователь не установил флажок, моя переменная связывается с нулевым значением (ожидаемое значение false). Почему это не связывается с ложью???

Я прикрепил свой код JSP.

JSP-код

<c:forEach items="${giftDelivery.tempHistoryDto}" var="profile" varStatus="status">
     <tr class="table_rows">                            
         <td>
         <input type="checkbox" name="tempHistoryDto[${status.index}].giftStatus" <c:if test="${profile.giftStatus == true}">checked = "checked"</c:if>>
         </td>      
     </tr>                      
</c:forEach>

Что я делаю неправильно здесь.

Любая помощь будет признательна.

Большое Вам спасибо.


person iuhettiarachchi    schedule 26.12.2018    source источник
comment
Почему ты делаешь это name="tempHistoryDto[${status.index}].giftStatus" вместо name="${profile.giftStatus)" ?   -  person Avijit Barua    schedule 26.12.2018


Ответы (1)


Я нашел проблему. В моем классе DTO я объявил giftStatus как объект Boolean. Я изменил его на примитивный тип boolean.

Вот и все.. Теперь переменная giftStatus также связывается с false.

Надеюсь это поможет..

person iuhettiarachchi    schedule 28.12.2018