Struts2: повторное заполнение текстовых полей списком <Integer> после проверки

У меня есть страница JSP, которая имеет такой код ::

 <div id="TextBoxesGroup">                                      <div class="control-group">
<label class="control-label" for="inputAuto">Room type</label>
<div class="controls">
<!-- <input type="text" id="inputAuto" class="grd-white" /> -->
<s:select id="inputAuto" data-form="select2" cssStyle="width:200px" data-placeholder="Select Room Type" name="resortRoomtype" headerKey="-1" list="roomtypeList"/>
</div>

</div>

<div class="control-group">
<label class="control-label" for="inputAuto">Room Numbers</label>
<div class="controls">
<!-- <input type="text" id="inputAuto" class="grd-white" /> -->
<s:textfield id="inputAuto" cssClass="grd-white" name="roomnumbers" onkeypress="return isNumber(event)"/>
<s:label name="roomNumberError" cssClass="help-inline" cssStyle=" color: red;"></s:label>
</div>

 </div>

</div>

<div >
  <input type='button' value='+' id='addButton' Class="btn " />
                                                      <input type='button' value='-' id='removeButton' Class="btn" />
</div>

мой JS для добавления и удаления кнопки ::

 <script type="text/javascript">
       $(document).ready(function () {

        $("#addButton").click(function () {
           if( ($('#TextBoxesGroup').children().size()+1) > 12) {
             alert("Resort don't have more rooms" );
               return false;
                 }
           var id = ($('#TextBoxesGroup').children().size()+1).toString();
            $('#TextBoxesGroup').append('<div class="control-group" id="control-group">
 <label class="control-label" for="inputSelectGroup">Room Type</label>

 <div class="controls"><select style="width:200px" id="inputSelectGroup" name="resortRoomtype" data-form="select2"> 
    <option value="Single Room">Single Room</option>
    <option value="Double Room">Double Room</option>
    <option value="Twin Room">Twin Room</option>
    <option value="Interconnecting Room">Interconnecting Room</option>
    <option value="Suite">Suite</option>
    <option value="Pent House Suite">Pent House Suite</option> 
    </select>
    </div>
    </div>

    <div class="control-group" id="control-group">
     <label class="control-label" for="inputauto">Number of rooms</label>
     <div class="controls">
     <input type="text" Class="grd-white" id="inputauto" name="roomnumbers"
     onkeypress="return  isNumber(event)" >

     </div>
    </div>');

         });


           $("#removeButton").click(function () {
               if ($('#TextBoxesGroup').children().size() == 2) {
                  alert("No more textbox to remove");
                    return false;
                     }

                $('#TextBoxesGroup').children().last().remove();
                $('#TextBoxesGroup').children().last().remove();
                    });
                });

 </script>

и в моем классе действий у меня есть ::

private List<Integer> roomnumbers;
getter/setters;

и у меня есть метод проверки, который будет проверять, есть ли поле пусто или нет. если он пуст, он вернет INPUT, и я вернусь на страницу формы (например, add_resort.jsp). Так, например, у меня есть ввод, как для roomtype :: single room roomnumber is :: 2, а для roomtype :: doubleroom roomnumber is :: empty (я забыл ввести номер), а затем я нажимаю кнопку сохранить изменения и проверка происходит .. но когда я возвращаюсь на эту страницу в своем текстовом поле номер комнаты, я получил значение примерно так ::[2, нулевая]

прецедент::::::

до проверки номер комнаты = 2

после проверки номер комнаты = [2]

прецедент::::::

до проверки номер комнаты = 2 номер комнаты = ноль

после проверки номер комнаты = [2, ноль]

в методе проверки

if(roomnumbers != null){
roomnumbers.add(new Integer(55));
setRoomnumbers(roomnumbers);
addFieldError("roomnumbers", "Please Enter valid room number.");
}

Ответы на вопрос(0)

Ваш ответ на вопрос